2012年(106)
分类: 嵌入式
2012-05-07 18:12:06
面向对象(随机数)
步骤一:向Form1中添加Edit和Button组件
步骤二:新建Unit2(File---New---Unit)
在Unit2中的代码:
unitUnit2;
interface
type
TMyclass=class(TObject)
private
a:array[1..1000] of integer;
Max:integer;
public
procedure SetMax(m:integer);//设置随机数最大范围
procedure Shuffle;//洗牌
function IthNo(I:integer):integer;//取一个随机数
end;
implementation
procedureTMyclass.SetMax(m:integer);
begin
Max:=m;
end;
procedureTMyclass.Shuffle;
vari,j,k:integer;
begin
for i:=1 to Max do a[i]:=i;
Randomize;
for i:=1 to Max do
begin
j:=random(Max)+1;
if j>Max then j:=Max;
k:=a[i];
a[i]:=a[j];
a[j]:=k;
end;
end;
functionTMyclass.IthNo(I:integer):integer;
begin
result:=a[i];
end;
end.
步骤三:Form1中
定义Myclass和变量i(写在implementation 后面一行) :
uses Unit2;
var Myclass:TMyclass;
i:integer;
Form---OnActivate:
Myclass:=TMyclass.Create;
Myclass.SetMax(20);
Myclass.Shuffle;
i:=1;
Button1:
Edit1.Text:=inttostr(Myclass.IthNo(i));
i:=i+1;
if i=21 then Button1.Enabled:=False;