Rnd 函数按微软官方的解释应该是:产生一系列大于0小于1的随机数,标准的格式是 Rnd(0),其中 0 是种子,默认的 Rnd 的种子就是 0,因此 Rnd 与 RND(0) 是一样的。
它不是按照系统时间产生不同的随机数,运行 Rnd 在不同的时间可能产生的随机数可能是一样的。伴随 Rnd 函数还有一个函数 Randomize 函数是初始化随机数生成器,有了这个函数 Rnd 在生成随机数是按照系统时间给定种子而产生不同的随机数,一般来说,二个函数结合使用,产生的随机数重复的概率将比较小。
例如:
Randomize
NN = Int( Rnd * 9 + 1)
生成1 到 10 之间的随机数,重复率就非常小。如果不使用 Randomize 函数,那么重复的几率将非常大,甚至可能生成一系列系统相同的随机数。