跳到主要内容

排列组合计算器:nPr、nCr、n!、n^r

nPr、nCr、n!、n^r、可重复组合:BigInt 精确结果 + 公式 + 代入步骤,浏览器本地

  • 本地处理
  • 分类 计算度量
  • 适合 买东西、做计划、训练或排期前,先算出大概范围。

输入 n(物品总数)和 r(取几个)。五种计数全部用 BigInt 精确计算,即使 100! 也每一位数字都对,不是四舍五入的近似值。

排列 P(n, r)
720
讲顺序、不重复。比赛名次、座位排序、有序口令。
公式
P(n, r) = n! / (n − r)!
P(10, 3) = 10! / (10 − 3)! = 10! / 7! = 720
组合 C(n, r)
120
不讲顺序、不重复。彩票摇号、组建委员会、一手牌。
公式
C(n, r) = n! / (r! · (n − r)!)
C(10, 3) = 10! / (3! · 7!) = 120
阶乘 n!
3,628,800
把全部 n 个物品排成一排的方法数。
公式
n!
10! = 3,628,800
可重复排列 nʳ
1,000
r 个位置每个都能从 n 个里任选。PIN 码 / 密码的空间大小。
公式
10^3 = 1,000
可重复组合 C(n+r−1, r)
220
不讲顺序但允许重复(多重集)。挖几勺冰淇淋、装一打甜甜圈。
公式
C(n + r − 1, r)
C(10 + 3 − 1, 3) = C(12, 3) = 220
试试示例
所有计数都是浏览器里的纯 BigInt 运算,不上传不写日志。

这个工具能做什么

一个排列组合计算器,输入 n(物品总数)和 r(取出个数)两个值, 一次性给出五种计数:排列 P(n, r)、组合 C(n, r)、阶乘 n!、可重复 排列 n^r、可重复组合 C(n + r − 1, r),结果即时刷新。

这个工具靠得住的地方在于精度。多数在线排列计算器用 64 位浮点做 运算,阶乘一旦超过 21! 就会悄悄丢精度(21! 已经超过 JavaScript 的安全整数上限 2^53 − 1)。本工具全程用 BigInt 计算,所以 100! 会返回全部 158 位正确数字,C(52, 5) 也是精确的 2,598,960 种扑克 牌型,绝不是四舍五入的近似值。每一行都会同时显示符号公式 (P = n! / (n − r)!、C = n! / (r!(n − r)!))和代入后的演算过程, 你可以把完整的逐步推导直接复制进作业或文档。每一行都有一键复制, 还有"复制全部"按钮,内置示例(彩票 49 选 6、3 位 PIN、名次排序、 洗一副 52 张牌),以及当 r > n、输入为负或非整数时清晰的中文错误 提示。所有运算都在你的浏览器里完成,不上传、不记录。

工具细节

输入
数值
页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
输出
即时结果 + 复制 + 预览
结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
隐私
浏览器本地处理
主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
保存 / 分享
可分享链接状态
关键设置会进入 URL,复制链接后别人能复现同一组参数。
性能预算
首屏 JS ≤ 10 KB
没有声明 WASM 依赖,适合快速打开和移动端使用。
适用场景
计算度量 · 学生
分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。

怎么用

  1. 1. 输入

    把内容粘贴或拖入工具面板。

  2. 2. 处理

    点击按钮,在浏览器内本地处理,文件不上传。

  3. 3. 复制 / 下载

    一键复制结果或下载到本地。

排列组合计算器 适合怎么用

适合快速估算、对比和规划数字,帮你在做最终决定前先有底。

适合计算任务

  • 买东西、做计划、训练或排期前,先算出大概范围。
  • 一次只改一个输入,对比不同方案。
  • 把模糊假设变成能讨论的数字。

计算检查项

  • 认真核对单位、日期、比例和取整方式。
  • 健康、金融、税务、法律相关结果只能做规划参考,不能替代专业意见。
  • 重要结果要保存输入条件,方便以后复算。

下一步可以接着做

这些入口会把当前任务接到更完整的工具链里。

  1. 1 科学计算器 科学计算器,三角/对数/开方/幂运算全支持,键盘可输入,带历史记录,角度/弧度切换。 打开
  2. 2 概率分布可视化 概率分布可视化, 正态 / t / 卡方 / F / 二项 / 泊松 / 指数 / 均匀 八大分布的 PDF + CDF 图, 实时算 P(a≤X≤b) 阴影面积, 替代教材后面的 z/p 表。 打开
  3. 3 基础统计计算器 基础统计计算器, 均值 / 中位数 / 众数 / 方差 / 标准差 / 四分位数 / 极差 / 偏度 / 峰度 全部一次出, 含直方图 + 箱线图可视化。 打开

真实使用场景

  • 买彩票前先算清中奖概率

    你想知道 49 选 6 摇号里中全部六个号码的真实概率。输入 n = 49、r = 6,看组合那一行:C(49, 6) = 13,983,816。这是 等可能的投注组合总数,所以单注中头奖的概率是 1 / 13,983,816。步骤:(1) n 设为号码池大小,(2) r 设为 摇出的号码个数,(3) 读 C(n, r),彩票不讲顺序,所以是 组合不是排列。之后用 percentage-calculator 把 1 / 13,983,816 换算成百分比写进文章。

  • 估算密码或 PIN 的空间大小

    安全评审问"如果每个字符是 95 个可打印 ASCII 符号之一, 8 位密码有多少种?"。这是可重复排列,因为每一位独立、 字符可重复。输入 n = 95、r = 8,读 n^r = 95^8 ≈ 6.6 × 10^15。步骤:(1) n 是字符集大小,(2) r 是长度, (3) 读 n^r 那一行。再拿 6 位纯数字 PIN(n = 10、r = 6 → 1,000,000)对比,向相关方说明长度和字符集比"复杂度规则" 更重要。

  • 数比赛名次与循环赛对阵

    排赛程时你需要 8 名决赛选手里产生第 1、2、3 名的方法数。 讲顺序且不重复,所以是排列:输入 n = 8、r = 3 → P(8, 3) = 336。步骤:(1) n = 选手数,(2) r = 有名次的位置 数,(3) 读 P(n, r)。要统计循环赛里谁对谁,把 r 改成 2, 读 C(8, 2) = 28 种不同对阵。

  • 给学生讲清排列组合并对作业答案

    数学老师布置"5 本书在书架上有多少种排法,又有多少个 3 本子集?"。输入 n = 5、r = 3:P(5, 3) = 60 种排法、 C(5, 3) = 10 个子集,n! = 120 是整架的排法。步骤: (1) 读 n! 看全部排列,(2) 读 P(n, r) 看有序子选取, (3) 读 C(n, r) 看无序子选取。每个结果下方的演算步骤行 可直接复制进答案卷,批改时是粘贴而不是重算。

  • 给菜单数冰淇淋球或配料的搭配数

    一家店有 6 种口味,允许顾客挑 3 球、可以重复(三球同一 口味也行),且甜筒上的顺序不计。这是可重复组合:输入 n = 6、r = 3,读 C(n + r − 1, r) = C(8, 3) = 56 种不同 甜筒。步骤:(1) n = 可选种类数,(2) r = 挑几个,(3) 当 允许重复但不讲顺序时读 C(n + r − 1, r) 那一行。可用于 菜单文案("56 种搭配你的甜筒")和备货规划。

常见踩坑

  • 该用组合却用了排列。把彩票头奖概率写成 P(49, 6) 会得到 10,068,347,520,这等于把 1-2-3-4-5-6 和 6-5-4-3-2-1 当成不同结果,而彩票并不区分顺序。彩票是无序的,正确的计数是 C(49, 6) = 13,983,816。问自己"重排我选的这些会不会产生真正不同的结果?"。如果不会,就用 C。

  • 忘了"允许重复"会改变用哪个公式。4 位 PIN 不是 P(10, 4) = 5040,而是 10^4 = 10000,因为数字可以重复。P(n, r) 和 C(n, r) 都假设每个物品最多用一次。如果你的实际问题允许同一物品再次被选,你需要的是 n^r 或 C(n + r − 1, r) 那两行。

  • 别信用普通浮点算大阶乘的计算器。很多工具把 25! 显示成 "1.5511210043331e25" 或把末几位四舍五入,这是有损的。如果你在算密码学、组合证明或概率分母里的精确计数,近似阶乘会悄悄毁掉答案。本工具用 BigInt 算出的 25! 是精确的 15,511,210,043,330,985,984,000,000。

隐私说明

每一种计数(阶乘、nPr、nCr、n^r、可重复组合系数)都是在你的 浏览器标签页里用纯 BigInt 运算完成的。n、r 和任何结果都不会发到 服务器,我们也不记录你算过什么。唯一会离开页面的是可分享 URL: 当前的 n 和 r 会写进查询字符串(例如 ?n=49&r=6),这样"分享这次 计算"的链接能为收件人复现结果。它们只是两个没有个人含义的整数, 分享是安全的;但万一你的 n、r 涉及敏感信息,请复制结果文本而不要 分享 URL。一个很小的偏好(你最后复制的是哪一行)存在浏览器的 localStorage 里,绝不外传。

常见问题

类似工具组合

做你这行的人, 还会一起用这些。

Made by Toolora · 100% client-side · Updated 2026-06-14