VB6.0做随机数选择,用了rnd函数,为什么每次生成的随机数都一样呢?
有没有用Randomize初始化随机数的种子
调用前加一句Randomize(),不然随机数的种子是一样的,生成的随机数当然也是一样的
因为rnd是一系列的不重复的数,叫伪随机数,每次程序运行它都按同样的方法将里面的数一个个读取出来。举个栗子:
RANDOM 包含十个随机数 {1,3,5,4,2,8,9,6,7,0}
它会从按顺序取这几个数,看起来它就是随机数,但是每次运行程序结果都这样,根本就是不是随机的,而是固定的可以预测的,所才叫伪随机。
为了解决这个问题,引用了 Randomize, 它的作用就是指定一个开始的号码,就是摇号了,这下子程序再运行由于开始点不同了,所以出来的数就更加随机了。