数学计算器
随机数生成器


随机数生成器

随机数生成器除了用于选择数字以确定奖品获得者之外,还有多种用途。了解适合它们的情况以及它们如何解决问题。

随机数

39, 67, 34, 23, 58, 21, 45, 87, 12, 98, 12, 14, 16, 54, 90, 91, 12, 32, 52, 64, 83, 74, 28

您的计算出现错误。

目录

  1. 基本随机数生成器
  2. 高级随机数生成器
  3. 随机数生成器的定义
  4. 随机数生成器解决的问题
  5. 何时使用随机数生成器
  6. 随机数生成器的历史

随机数生成器

随机数生成器在选择数字时会自动从有限的数字范围内进行选择,而且在其生成过程中没有可预测的模式。每次选择下一个数字都完全独立于前一个。然而,可以在生成范围内的随机数之前指定一个分布范围。这需要用户的输入,并完全基于他们对随机化和预期结果的需求。

基本随机数生成器

如果您只是在寻找一个随机数,可以使用我们的基本随机数生成器。首先,您必须决定将为您的数字使用什么范围。范围是您可以生成随机数的数字范围。

例如,如果您想要一个在1到10之间的随机数,您的范围将是1 - 10。要将其输入到计算器中,请输入1作为下限,10作为上限。

高级随机数生成器

如果您想生成多个数字,或者想处理更大的范围,请使用随机数生成器的扩展版本。确定下限和上限的范围,然后输入您希望生成的数字数量。

您还可以选择生成整数或小数。整数也称为整数,例如1、2和3。小数是由小数点(点或逗号)分隔的数字,通常看起来像这样:1.02; 2.12; 3.33等。

我们的综合随机数生成器还有一些其他提示可供选择。您可以选择是否允许在结果中重复、对结果进行排序,以及如果您更喜欢小数,希望有多少位数。

虽然在大多数情况下精确是理想的,但有些情况需要随机性。如果您正在寻找没有人能预测的结果,您需要一个能生成随机结果的过程。这就是随机数生成器的用途所在。

随机数生成器有广泛的应用范围,被用于游戏、安全和彩票等行业 - 但您也可以在最平凡的情境中使用它们。在本指南中,我们将讨论随机数生成器是什么,它们如何工作,一些最流行的用途,以及它们是如何诞生的。

随机数生成器的定义

随机数生成器根据给定的范围选择一个或多个随机数。它可以是基于硬件的,也可以是伪随机的。

硬件随机数生成器(HRNG)依赖于诸如大气噪音、热噪音等物理现象,理论上这些现象是不可计算的。经典示例包括硬币翻转、骰子和轮盘。在安全和密码学行业中也使用更复杂的设备。

伪随机数生成器(PRNG)是生成近似真实随机性的数字序列的算法。它们通常用于计算机程序,因为它们比基于硬件的随机数生成器更快、更容易实现。我们的计算器就是伪随机数生成器的一个例子。

随机数生成器解决的问题

随机数生成器可以用于多种场合。您可能已经在一些小情况下使用它而没有意识到。如果您在做决定时遇到困难并诉诸于抛硬币,那么您就在使用随机数生成器。

许多应用需要某种形式的随机性,包括游戏、模拟和安全。例如,游戏可能使用随机数生成器来选择每个玩家的下一步行动,或确定给每个玩家发放哪些牌。

模拟可能使用随机数生成器生成用于其计算的随机数。安全应用可能使用随机数生成器来生成一次性密码或加密密钥。

何时使用随机数生成器

随机数生成器的结果在各种情况下都可能非常有用,无论是大是小。例如,如果您相信运气的力量,可以使用我们的计算器选择您的彩票号码。如果您计划举办带有抽奖奖品的活动,随机数生成器可以帮助您确定获奖者。

在进行大规模的统计计算时,您可以使用随机数生成器。

如果您想知道何时使用随机数生成器,请留意以下迹象:

  • 您希望在游戏或应用程序中创造一种偶然感。
  • 您需要生成难以猜测的数字。
  • 您正在处理一个庞大到无法完全列举的人群。

随机数生成器的历史

随机数生成器的历史充满神秘。有人说它是由古代中国人用于占卜而创造的。还有人声称阿拉伯数学家首先将其用于赌博。

无论其起源如何,随机数生成器已经被用了几个世纪来创建随机结果。

例如,骰子在古代与我们今天所知的形状和样式不同。考古学家发现了用不同材料制成的骰子,如棍子、贝壳、骨头,以及只有2或3面的骰子。已知最古老的立方体骰子出现在公元前2500年的印度河流域。

最早记录的电子随机数生成器的发明发生在1947年,当时RAND公司创造了一种通过将轮盘赌连接到计算机来生成随机数的设备。多亏了这个设备,科学家们首次获得了大量的随机数序列。他们后来将这些数字序列发表在一本书中,供科学家在实验中使用。

另一台类似的机器ERNIE,建于今天著名的布莱切利公园的1940年代,用于生成英国优质债券彩票的随机数。后来,为了消除对其操作原理的不诚实和非随机性的怀疑,制作了一部关于这个随机数生成器的纪录片《The Importance of Being E.R.N.I.E.》。

约翰·冯·诺伊曼在1955年进一步发展了随机数生成器。他创造了“中方法”,这是一种用于模拟和建模的生成随机数的过程。

他的想法是从某个数字开始,取其平方,丢弃结果中间的数字。再次取平方并丢弃中间部分,如此继续。在他看来,所产生的序列具有与随机数相同的属性。冯·诺伊曼的理论并不是最优的。无论您选择什么初始数字,以这种方式生成的系列都会退化为重复值的短循环,如8100、6100、4100、8100、6100、4100。

一些计算机编程语言仍然使用约翰·冯·诺伊曼的方法。

1999年,英特尔在i810芯片组中添加了硬件随机数生成器。这种实现基于温度噪声产生了真正的随机数。然而,它的工作速度不如软件随机数生成器快。2012年,英特尔在其芯片中添加了RDRAND和RDSEED指令,基于相同的温度波动产生真正的随机数,但现在速度可达每秒500Mb。

人们仍在讨论在这个或那个系统、操作系统内核、编程语言、加密库等中应该使用哪种随机数生成器。许多算法的变体都针对速度、内存节约和安全进行了优化。随机数生成器已经发展并应用于各种应用,如创建随机密码、生成安全加密密钥以及模拟研究目的的现实世界事件。