主题:小菜问题3~!
jy02042738
[专家分:70] 发布于 2005-08-22 06:57:00
引用:
问:随机数不随机
答:
一般来说,最好是 rnd 与 time 结合使用
因为QB每次取 rnd 的方法都一样的,
所以每次得到的 rnd 数列是完全相同的
但你可以在每次取数前
都预置一次种子数 randomize timer
这是一种比较常见的办法
那么randomize timer是什么来的,具体是怎样弄的呢?
回复列表 (共6个回复)
沙发
jyf1987 [专家分:930] 发布于 2005-08-22 09:26:00
看来老鸟都晕过去了
让我来回答吧
timer 是取时间的,反正最后结果是个数,因为每次运行程序时都肯定与上次的时间数是不同的,所以就保证了每次随机的种子都不同的,当然这是指在同一天的
在不是同一天里还有有可能重复的,不过几率很小
板凳
def [专家分:3380] 发布于 2005-08-22 11:04:00
就是用时间小数做种子
时间小数的小数不芬每天都不一样。。。
3 楼
moz [专家分:37620] 发布于 2005-08-22 11:46:00
现在怎么那么多人引用 <moz语录> 了?
4 楼
jy02042738 [专家分:70] 发布于 2005-08-23 08:14:00
高手们啊~!
求求你们吧~!
给我一个例子~!
你们说那么多我都不听不懂~!
5 楼
moz [专家分:37620] 发布于 2005-08-23 08:27:00
例:
randomize timer
a=rnd
我还见过有人这样获得随机数的:
p$ = RIGHT$(TIME$, 2)
q$ = LEFT$(TIME$, 2)
o = VAL(q$) * VAL(p$) + VAL(p$)
FOR u = 1 TO o
l = RND
NEXT u
这个人好像就是你喔.
6 楼
jy02042738 [专家分:70] 发布于 2005-08-24 02:24:00
没错,就是我。
哈哈~!
一时想不到别的,所以乱搞一个顶着先啦~!
不过还真的有抛砖引肉的效果嘛~!
我来回复