注册 登录
编程论坛 Delphi论坛

[求助]Delphi中如何生成一个特定范围的随机数?

hawk022 发布于 2007-08-29 17:16, 32829 次点击
两个问题:
1. Delphi中生成随机数的函数是什么?如何生成一个特定范围的随机数?
2. 如何查找Delphi自带的函数?也就是说,我怎么才能知道Delphi有哪些函数我可以直接调用的?谁有Delphi的函数说明手册之类的东东吗,共享一下,感激不尽!

谢谢!
6 回复
#2
继续忽悠2007-08-30 17:10

这是用C#写的,你参考一下看能不能行
Random randobj= new Random();
labCode.Text=randobj.Next(1000,10000).ToString();

#3
hawk0222007-08-31 20:15
嗯,谢谢。我听说delphi中可以这样做。
integer data;
randomize;
data = random(30);//产生一个0-30的随机数。
产生一个特定范围倒好办,可以做一个循环, 不满足要求让他重新再产生。

可是这样的话,每次产生的序列都是一样的,不知道如何才能设随机的种子(seed)。

注:上面这段代码我还没有验证,只是看到别人有这么说。
#4
sxf陌生人2007-09-01 20:50

Randomize;
i := random(999);
while (i < 100) do
i := random(999);
edit9.Text:=inttostr(i);
产生了100-999的数 条件可以自己改

#5
hawk0222007-09-03 13:56
嗯,楼上的将我所说的用代码实现了,非常感谢。
可是,由于随机函数是伪随机算法的,比如C语言,可以为随机函数指定一个种子(seed),让不同种子的随机函数产生不同的随机序列,不知道Delphi有没有这种功能?
#6
sky_yang_sky2007-10-13 17:13
randomrange(min,max)可以取位於這倆個數之間的隨機數
#7
xiaofkg2007-10-19 09:02

var a:integer;

randomize;
a=trunc(random(100));

1