階乘計算機

輸入

10
3

計算結果

10!

3,628,800

n10
10! 結果3,628,800
9!362,880
11!39,916,800
P(10, 3) 排列720
C(10, 3) 組合120

10! = 3,628,800。可以理解為 10 個物品全排列有 3,628,800 種方式。

階乘定義

n 的階乘(n!)定義為:

n! = n × (n-1) × (n-2) × … × 2 × 1

特殊值:0! = 1(數學約定)

常見階乘值

nn!近似科學記號
01-
11-
22-
36-
424-
5120-
103,628,8003.6 × 10⁶
151,307,674,368,0001.3 × 10¹²
202,432,902,008,176,640,0002.4 × 10¹⁸

排列與組合公式

排列數 P(n, r)

從 n 件物品中,取出 r 件並考慮順序:

P(n, r) = n! / (n - r)!

範例:10 位跑者,求前 3 名的排列方式數:P(10, 3) = 10! / 7! = 720 種

組合數 C(n, r)

從 n 件物品中,取出 r 件不考慮順序:

C(n, r) = n! / (r! × (n - r)!)

範例:10 人中選出 3 人組隊:C(10, 3) = 10! / (3! × 7!) = 120 種

彩券中獎機率

彩種規則機率公式頭獎機率
大樂透49 選 61/C(49,6)約 1/1,398 萬
威力彩38 選 6 + 8 選 11/(C(38,6)×8)約 1/2,209 萬
雙贏彩不同區各選依規則約 1/1,000 萬

應用場景

密碼學

AES 128 位元金鑰的可能組合數 = 2^128 ≈ 3.4 × 10^38,遠大於 170!(≈ 7.2 × 10^306 超出計算範圍)。暴力破解在當前算力需要宇宙年齡的多倍時間。

棋盤遊戲

西洋棋第一步各有 20 種可能走法,兩方各走一步後有 400 種局面,10 步後超過 10^29 種可能棋局。這是為什麼即使是 AI 也難以做到完美棋力。

本計算機支援 n 最大到 20(n = 20! ≈ 2.4 × 10^18)。超過 170 時結果超出 JavaScript 浮點數精度(Infinity)。

常見問題

0! 為什麼等於 1?
0! = 1 是數學約定,有幾個理由:1) 從遞推關係 n! = n × (n-1)! 推出:1! = 1,所以 1! = 1 × 0!,得 0! = 1。2) 組合數 C(n,0) = 1(從 n 件中取 0 件只有 1 種方式:什麼都不選),若 0!=1 則公式一致。3) 空集合的排列方式恰好 1 種(什麼都不做)。
排列和組合有什麼不同?
排列 P(n,r) 考慮順序:從 n 件中取 r 件,順序不同算不同,P(n,r) = n! / (n-r)!。組合 C(n,r) 不考慮順序:從 n 件中取 r 件,順序不同算同一種,C(n,r) = n! / (r! × (n-r)!)。例如從 {A,B,C} 中取 2 件:排列有 AB、BA、AC、CA、BC、CB 共 6 種;組合只有 AB、AC、BC 共 3 種。
台灣樂透彩的中獎機率怎麼算?
台灣大樂透從 1~49 中選 6 個號碼,中獎機率 = 1 / C(49,6) = 1 / 13,983,816,約 1/1,400 萬。威力彩從 1~38 選 6 個 + 第二區 1~8 選 1,頭獎機率 = 1/(C(38,6) × 8) = 1/(2,760,681 × 8) ≈ 1/2,200 萬。中彩券的機率遠低於被閃電打中(約 1/100 萬)。
n! 增長有多快?
階乘增長速度極快:10! = 3,628,800;20! ≈ 24 億億;170! 接近 JavaScript 數值極限(之後顯示 Infinity)。Stirling 近似公式:n! ≈ √(2πn) × (n/e)^n,用於估算大 n 的階乘對數。密碼學和量子計算中,某些暴力破解算法的複雜度就是 n! 數量級。

相關計算機