delphi 生成随机数(100)

  • 主题发起人 主题发起人 zhangxuepu107
  • 开始时间 开始时间
Z

zhangxuepu107

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序要隔断时间生成一组十位的数字,前提是:每次生成的和已生成的不一样,本次生成的最好也不要重复.请问如何实现.可以用delphi实现,可以用sql server 实现.
 
在delphi和sqlserver下都有随机函数
 
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, math;type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);var i,ii, int:integer; str:string;begin Randomize; int:=Random(9999999999); str:= inttostr(int); if length(str)<> 10 then begin for i:=1 to 10-length(str) do str:='0'+str; end; for ii:=0 to memo1.Lines.Count do if str= memo1.Lines.Strings[ii] then exit; memo1.Lines.Add(str);end;end.
 
为了避免重复,你需要把已经生成的保存起来
 
TO; hksoobe每次生成的能保证不出现重复的吗?
 
生成要先压入数组,下一个生成后看是否重复,重复得继续随即生成
 
memo1.Lines.Add(str);在后加上memo1.Lines.Savetofile('c:/1.txt');就可以实现时时保存了!
 
自己写一个生成随机数的类
 
后退
顶部