作业帮 > 综合 > 作业

谁能提供个写随机函数的思路,探究rand函数的工作原理

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/06/17 08:28:20
谁能提供个写随机函数的思路,探究rand函数的工作原理
大家都知道,程序语言的随机数,一般都是用rand来产生的,(不同语言格式可能略有不同),我现在想知道,这个函数究竟怎么返回的随机数,谁能提供个思路?
说下我的见解:我本以为会和时间挂钩,把时间通过乱七八糟的算法,得到一个0-9的数字.如果是这样,那么相同时间产生的随机数将会一致,很明显这样不行.那么究竟怎样才行……
谁能提供个写随机函数的思路,探究rand函数的工作原理
有关如何产生随机数的理论有许多,如果要详细地讨论,需要厚厚的一本书的篇幅.
有限状态机不能产生真正的随机数的,所以在现在的计算机中并没有一个真正的随机数生成算法,现有的随机数生成算法生产的随机数只不过因为重复的周期比较大,可以做到使产生的数字重复率很低,这样看起来好象是真正的随机数,一般称作叫伪随机数发生器.
真正的随机数是使用物理现象产生的:比如掷钱币、骰子、转轮、使用电子元件的噪音、核裂变等等.这样的随机数发生器叫做物理性随机数发生器,它们的缺点是技术要求比较高.真随机数生产效率没有伪随机数高,还有就是"信息熵的信息量如果很有限的话,就不是一定是真的随机数了."
建议去看看这篇文章: