onlinecalculator.me

免费在线随机数生成器

随机数生成器在您设置的范围内以相等的概率选择数字。 将其用于游戏、彩票、统计抽样或任何您需要无偏随机的时间。

關於這個計算器

如何使用

  1. 设置范围的最小值和最大值。
  2. 选择要生成多少个数字 (1–100)。
  3. 选择 整數十進制 类型。
  4. 选中或取消选中 允許重複 根据需要。
  5. 单击 产生 查看您的随机数。

这个怎么运作

每个数字都是从[min, max] 的范围中独立和均匀地绘制的。

对于没有重复项的整数,计算器使用 Fisher-Yates 部分 shuffle:

Place all integers min..max in a pool.
For each position i from 0 to count-1:
  pick random j from i..poolLength-1
  swap pool[i] and pool[j]
  use pool[i] as the next result

对于小数,每个值绘制为:

value = min + Math.random() × (max − min)

四舍五入到 2 位小数。

常见用途

  • 抽奖或抽奖 — 从 1-49 中选择 6 个唯一整数(禁用重复项)。
  • 随机取样 — 通过生成 1-500 的 20 个唯一整数,从 500 列表中选择 20 行。
  • 游戏随机化 — 主动顺序、战利品掉落、事件触发器。
  • A/B 测试分配 — 通过生成 1-2(或 1-n)的 1 个整数来确定用户看到的变体。
  • 选择一号决定 — “正面或反面”是 1-2; “哪家餐厅”是 1-n,其中 n 是您的候选名单。

工作示例

彩票选择 — 1–49 中的 6 个唯一数字

  • 最小值:1,最大值:49,计数:6,类型:整数,允许重复: 空闲的
  • 示例输出:7、12、23、31、38、44

从 250 个条目中随机挑选一个获胜者

  • 最小值:1,最大:250,计数:1
  • 输出:187 → 条目 #187 获胜

蒙特卡罗测试 — 0 到 1 之间的 10 个小数

  • 最小:0,最大:1,计数:10,类型:十进制
  • 输出:0.34、0.71、0.12、0.58、0.94、0.03、0.46、0.82、0.27、0.69

笔记

  • 不是加密安全的 — 使用浏览器的 Math.random(), 适合彩票、游戏和抽样,但是 对于密码、令牌或任何可以利用可预测性的东西。 使用 crypto.getRandomValues() 或用于安全的硬件 RNG。
  • 对于非常大的范围(例如 1 到 1,000,000),即使允许重复的整数也不太可能。
  • 计数上限为 100 以保持结果可读。
  • 十进制模式总是允许重复,因为从宽范围重复特定的 2 位小数的值是罕见的。
  • 公平与统一 — 生成器是均匀的:范围内的每个值的概率相等。 “随机”并不意味着每个序列都“感觉”是随机的——7 7 7 的运行可能与 3 8 1 一样广泛。
數字真的是隨機的嗎?
生成器使用浏览器的 Math.random(),它是一个伪随机数生成器 (PRNG)。 它产生的数字在统计上统一且无法预测,足以供日常使用——游戏、抽样、随机化——但不是为了加密安全。 出于加密目的,使用基于硬件的生成器。
「允許重複」是什麼意思?
當允許重複時,相同的數字可以出現多次。 當停用時,每個產生的整數最多會出現一次。 小數點數不能停用重複項,因為相同十進制重複的機率實際上為零。
為什麼停用重複有時會出現錯誤?
如果您要求的唯一整數比該範圍內存在的更多,則不可能遵守。 例如,在 1 到 5 之間產生 10 個唯一的整數是不可能的 — 只有 5 個可用的值。
整數和十進制輸出有什麼區別?
整數是整數(沒有小數點)。 十進制結果恰好以兩個小數點顯示,並且可以表示範圍內的任何值,包括分數值。
如何共享固定的随机种子?
此计算器不支持固定种子 - 每次单击都会生成新结果。 使用“与我的数字共享”共享您的范围和计数设置,而不是生成的特定数字。

将此免费计算器添加到您自己的网站。 复制片段 - 它适用于您可以粘贴 HTML 并与此页面保持同步的任何地方。

预览嵌入 →

浏览所有计算器 → · 更多在日常 →