彩票模拟器 (2001年3月24日)
网友更新 分类:算法 作者:WindAgain 推荐:WindAgain 阅读次数:304
(http://www.codesky.net)
--------------------------------------------------------------------------------
产生7个互异随机数(1~33)
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
temp:integer;
na,nb:array[0..32] of integer;
begin
for i:=0 to 32 do
na[i]:=i+1;//初始化数组;
for i:=0 to 6 do
begin
temp:=random(33-i);
nb[i]:=na[temp];//从na中随机地取一个数;
for j:=temp to 32-i do
na[j]:=na[j+1];//从na中去掉取出的数;
end; //取出了7个数,并保存在nb数组中;
edit1.Text:=inttostr(nb[0]);
edit2.Text:=inttostr(nb[1]);
edit3.Text:=inttostr(nb[2]);
edit4.Text:=inttostr(nb[3]);
edit5.Text:=inttostr(nb[4]);
edit6.Text:=inttostr(nb[5]);
edit7.Text:=inttostr(nb[6]);
end;
完成只用了四条语句,很简练。