使用数组编写一个程序来测试计算机随机数生成器的随机性

时间:2015-02-23 22:41:06

标签: eclipse

如何编写测试计算机随机数生成器随机性的程序。在0到9的范围内生成10,000个整数,并在结尾显示每个数字的计数列表。由于每个数字有十分之一的机会,完成时应该有大约1000个。这是使用数组

输出示例

0:1007

1:1024

2:989

...

1 个答案:

答案 0 :(得分:0)

首先,您需要一个随机数生成器。你的PC内部没有任何内容可以提供真正的"随机数。有一些算法,在播种后产生伪随机数(在c ++ theres rand()中,这是一个线性同余生成器http://en.wikipedia.org/wiki/Linear_congruential_generator,或者如果使用c ++ 11,有更复杂的替代品,如mersenne twister { {3}})。

测试"随机性"在创建统一的分布式随机数时,您可以通过实验方式完成这些算法。更通用的方法是计算实验结果的积分与随机数的目标分布的差异。虽然在了解算法时,可能更有效地分析它以找出其周期性。

由于我没有读过一个问题,所以我一直希望能够回答这个问题。