随机数问题2(50)

  • 主题发起人 主题发起人 liugaohui
  • 开始时间 开始时间
L

liugaohui

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.Button1Click(Sender: TObject);vari,j,randSeed:integer;alist:tstringlist;beginalist:=tstringlist.Create;randSeed := strtoint(edit1.Text); //先设置随机数种子richedit1.Clear;for i := 1 to 20 do begin j:= Random(30); alist.Add(inttostr(j)); end;richedit1.Clear;richedit1.Lines.AddStrings(alist);alist.Free;end;edit1.Text初始赋值100,运行程序,得到第1组数据,改变edit1.Text,运行,得到第2组数据,edit1.Text重新修改为100,运行得到第3组数据,为什么第1组和第3组数据不一样?谢谢回复
 
搞不清楚你要做什么,为什么这样写.....随机数就是不一样啊。
 
随机都一样了还随个什么机?
 
能一样吗?1以内就一样有机会一样了
 
randSeed是system单元的全局变量,而你在又在函数过程局部又定义了randSeed,你修改的是你自己的randSeed种子数,而不是random操作的randSeed变量,你只要去掉你声明的RandSeed变量变行了。
 
你的种子有什么用阿randSeed := strtoint(edit1.Text); //先设置随机数种子j:= Random(30);//这里直接写30了上面的randSeed 根本就没用到阿?还设置个屁阿?还有你随机数没有初始化阿。 Randomize; //要加这一句才管用,否则不随机的。
 
谢谢[xiaopei],没有发现,哈哈
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
913
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部