Melgene小应用随机数生成器

随机数生成器

随机数生成器:怎么用,以及怎样让每次抽号都公平

随机数生成器看起来是网上最简单的工具:输入两个数字,得到第三个。可人们用它来抽中奖者、课堂点名、摇号、抽取问卷样本,还用它化解小争执。无论哪种情况,结果只有在大家都信得过时才有意义。这篇指南会介绍怎么使用、抽奖和课堂上的点子、随机到底是什么意思、真随机和伪随机的区别,最后分享几个让抽号保持公正的好习惯。

随机数生成器怎么用

所有操作都在一个页面完成。在“最小值”里填最小的数,在“最大值”里填最大的数,或者直接点 1–10、1–45、1–100 这样的常用范围。两端都包含在内,所以 1 到 10 也可能抽到 1 或 10。负数也可以,两端各自最远到正负十亿。

接着决定要抽几个数字,从 1 个到 1000 个都行。像抽奖券号、座位号这种一个号码不能出现两次的情况,就保持“允许重复”关闭。想从小到大看结果,就打开“从小到大”。在“更多选项”里可以排除 13 这样的号码或 20-25 这样的一整段,还能给这次抽号起个名字。点下抽号按钮,数字会像老虎机一样滚动,然后停在结果上。

  • 填写最小值和最大值,或点一个常用范围。
  • 决定要抽几个数字。
  • 选择是否允许重复、是否排序。
  • 需要的话填上排除号码和抽奖名称。
  • 点击抽号,然后复制数字或结果链接。

抽奖、粉丝福利和课堂上的用法

大多数用法都是给每个人或每件东西编号,再让生成器来选。做微博或小红书的评论抽奖时,把符合条件的评论按时间顺序编号,按奖品数量不重复地抽,再把结果链接贴到公告里。打开链接的人会看到带着抽号时间和设置的原始结果。“粉丝福利抽奖”这样的名称也会一起保存在链接里。

老师们用随机数让课堂更公平,也更有一点紧张感。每个学生都有学号的话,就没人能抱怨老是点到同一个人。

  • 抽奖:把范围设成发出的奖券号码,每个奖品抽一名。
  • 评论抽奖:给有效评论编号,不重复地抽,然后分享结果链接。
  • 课堂:决定谁来回答、随机分同桌、安排小组汇报顺序。
  • 办公室:决定交换礼物的顺序、会议记录人,或从编号的午餐候选里选一家。
  • 学习和游戏:生成口算练习的数字、选一页来读,或做一个任意面数的骰子。

随机到底是什么意思

一次抽号是随机的,意思是每个可能的结果机会都相同,而且谁都无法预测下一个结果,按按钮的人不行,写代码的人也不行。随机并不代表短时间内分布得很均匀。在 1 到 10 里抽几次,出现重复或连号再正常不过,连续两次抽到 7 的概率,和先抽到 3 再抽到 8 完全一样。

人类出了名地不擅长“装随机”。让人从 1 到 10 里随便选一个,很多人会选 7,很少人选 1 或 10;让人写一串随机数字,大家会比真实概率更刻意地避开重复。所以就连谁先来这样的小事,用随机数也很有用,它能去掉人类选择里藏着的习惯。

真随机、伪随机和加密随机数

计算机只会按指令办事,没法凭空变出随机。伪随机数生成器从一个叫种子的初始值出发,用公式算出一长串看起来随机的数字。简单的算法用在游戏里没问题,但可能被预测,有的还会留下细微的规律。真随机数则来自物理噪声,比如电子元件的热噪声或硬件的时序抖动。

现代浏览器提供密码学安全的随机数生成器 crypto.getRandomValues,本工具用的就是它。它由操作系统用硬件噪声播种,设计上无法从过去的输出推出未来的输出,所以也被用来生成安全密钥。另外,本工具还避开了一个常见错误——取模偏差:用取余把一个很大的随机数缩到小范围时,有些数字会稍微更容易出现。工具会丢掉落在多余区间的值重新抽,让范围内每个数字的概率完全相同。不重复抽号时使用的洗牌方法,即使范围有二十亿个数字也能正常工作。

公平透明抽号的小技巧

公平的工具只是公平抽号的一半,另一半是提前做好安排,让事后没人能质疑结果。

  • 先公布规则:范围、编号方式和中奖人数。
  • 抽号前锁定参与名单,并记录每个人对应的号码。
  • 抽一次就用这次的结果。抽到满意为止就失去了抽奖的意义。
  • 分享结果链接。里面保存了数字、设置和时间,看的人看到的是原始结果,而不是重新抽的。
  • 如果是直播,就共享屏幕或开播,让大家一起看数字停下的那一刻。
  • 只排除真正无效的号码,比如没卖出去的奖券,并公开说明。

马上开始随机抽号