順列・組み合わせ計算
n 個から r 個を選ぶ場合の数を、順列(nPr)と組み合わせ(nCr)で計算します。
順列と組み合わせの違い
- 順列(nPr):n 個から r 個を選んで並べる数です。順番が違えば、別の選び方として数えます。nPr = n × (n−1) × … × (n−r+1) = n! ÷ (n−r)!
- 組み合わせ(nCr):n 個から r 個を選ぶだけの数です。順番は区別しません。nCr = nPr ÷ r! = n! ÷ (r! × (n−r)!)
- 例:10 人から 3 人を選んで、1 位・2 位・3 位を決める → 順列で 720 通り。10 人から 3 人の委員を選ぶ → 組み合わせで 120 通り。
- 関係:nPr = nCr × r!(選んだ r 個を、並べ替える数 r! を掛けると、順列になります)。
計算例
- 10P3 = 720、10C3 = 120
- 52C5 = 2,598,960(トランプ 52 枚から 5 枚を選ぶ)
- 49C6 = 13,983,816(49 個の数字から 6 個を選ぶ)
- 20P2 = 380、20C2 = 190
- 5P5 = 120、5C5 = 1
- 1000C500 = 300 桁の整数
n・r が 0 のとき、r が n より大きいとき
- n = 0 または r = 0:何も選ばない選び方が 1 通りあるので、1 通りです(0P0 = 0C0 = 1、nP0 = nC0 = 1。0! = 1)。
- n = r:nPn = n!、nCn = 1(全部を選ぶ 1 通り)。
- r が n より大きい:n 個から、n 個より多くは選べないので、0 通りです(エラーにはしません)。
- 負の数・小数・数字以外は、エラーです。
計算方法と上限
- 正確な整数で計算します(小数の誤差は出ません)。
- n は 1,000 までです(r は 0 以上の整数)。1,000! は 2,568 桁になりますが、このツールは、桁数が多いとき(16 桁以上)は、「約 4.023873 × 10^2567(2,568 桁)」のように概算と桁数を表示し、全桁は折りたたんで表示します。
- 重複を許す順列(n の r 乗)・重複組み合わせは、扱っていません。
注意点
- 確率を分数で表すときは、分数計算が使えます(例:当たりの組み合わせ 1 通り ÷ 全部の組み合わせ)。
よくある質問
nPr と nCr は、どちらを使えばよいですか?
順番に意味があるとき(順位、並べ方、暗証番号)は nPr、順番に意味がないとき(委員の選出、くじ引きの当選者の組)は nCr です。
0! は、なぜ 1 ですか?
「何も並べない並べ方が 1 通りある」と決めると、nPr や nCr の式が、n = r や r = 0 のときも成り立つからです。
nC0 が 1 なのはなぜですか?
0 個を選ぶ選び方は、「何も選ばない」の 1 通りだからです。