如何产生真正的随机函数?
//MSDN <BR>Randomize <br><br>为了生成某个范围内的随机整数,可使用以下公式:Int((upperbound - lowerbound + 1) * Rnd + lowerbound) <br><br>这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。 <br><br><BR>---- 在VB中的随机函数是Rnd,但在使用的过程中发现,虽然程序启动后产生的数值是随机的,但对于每次重新启动,程序都会产生相同的随机数序列,应该怎样解决? <br><br>----VB中随机函数的原形是: Rnd(number),Rnd函数返回小于1但大于或等于0的值。number (可选项)的值决定了Rnd生成随机数的方式。由于生成随机数方式的确定,导致了每次新启动随机函数,最初给定的种子都会生成相同的数列,因为每一次调用Rnd函数都用数列中的前一个数作为下一个数的种子。 <br><br>----为了每次运行程序调用随机函数都会有不同的随机数序列,在调用Rnd之前,先使用无参数的Randomize语句初始化随机数生成器,该生成器具有根据系统计时器得到的种子,这样再调用Rnd就会得到不同的随机数序列了。 <br><br>----另外,根据Randomize的工作原理,用户也可以编制自己的随机函数,即利用函数Timer得到从午夜开始到现在经过的秒数,然后再根据要得到的随机数值大小对该数值进行“衰减”处理,这样得到的数值则可称得上是真正意义的随机数值。 <BR><div class="art_xg">
<b>您可能感兴趣的文章:</b><ul><li>sql server中随机函数NewID()和Rand()</li><li>python中随机函数random用法实例</li><li>php中随机函数mt_rand()与rand()性能对比分析</li><li>perl写的一个随机编故事的程序(rand随机函数)</li><li>Oracle随机函数之dbms_random使用详解</li><li>php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍</li><li>如何利用当前时间生成随机函数?</li><li>详解C语言中rand函数的使用</li></ul>
</div>
</div>
<!--endmain-->
頁:
[1]