組み合わせ・順列計算
n個からr個を選ぶ方法が何通りあるかを、順序の有無、重複の有無に応じて数えます。
すべてブラウザ内で動作します。アップロード、記録、保存は一切行いません。
何通りか
13983816
- 使った計算式
- C(49, 6) = 49! / (6! × (49 − 6)!)
- 答えの桁数
- 8
4つのうちどれが必要かは、2つの問いで決まります。出てくる順序は関係あるか?同じものを2回選べるか?人が間違える組み合わせの問題はどれも、この問いを立てないまま答えてしまったものです。
仕組み
宝くじの抽選は組み合わせです。49個から6個の数字を選び、出てくる順序は何も変えません。表彰台は順列です。1位、2位、3位は、同じ3人でも違う結果になります。4桁の暗証番号は重複順列です。1111が認められるからです。
場合の数はすぐにコンピュータの整数の範囲を超えます(21!でもう超えます)。そのためここでは10進数の文字列で1桁ずつ計算します。おおよその場合の数は何の数でもありませんし、浮動小数点の答えは16桁ほどで、何も告げずに正確さを失います。
組み合わせは、3つの階乗を計算して最後に割るのではなく、掛け算と割り算を交互に行って求めます。途中の結果もすべて整数なので、桁数が答えより大きく膨らむことはありません。
例
| ケース | 入力 | 結果 |
|---|---|---|
| 宝くじの抽選:順序は関係ない | C(49, 6) | 13 983 816 |
| 表彰台:順序が重要 | P(10, 3) | 720 |
| 4桁の暗証番号:重複あり | 10^4 | 10 000 |
| どんなマシンの整数よりも大きい | C(1000, 500) | 300桁の数、正確な値 |
よくある質問
どれを使えばよいですか?
選んだもののうち2つを入れ替えると違う結果になるかを考えてください。なるなら順列、ならないなら組み合わせです。次に、同じものを2回選べるかを考えます。サイコロを振るなら選べますが、トランプの手札なら選べません。
C(49, 6)が宝くじの券の種類の数になるのはなぜですか?
抽選は49個から重複なしで6個の数字を選ぶもので、引かれる順序で券が変わることはないからです。13,983,816は存在する券の種類の数で、どの1枚が当たる確率もその分の1です。
上限が1000なのはなぜですか?
計算が破綻するからではなく(破綻はしません)、答えが読めなくなるからです。1000!は2,568桁の数です。100,000!なら、誰も求めていない数字が何ページも続くことになります。
ここでは0の0乗は1ですか?
はい。何もないところから何も並べない方法はちょうど1通り(空の並び)であり、組み合わせ論は最初から最後までこの慣習を使っています。
知っておきたいこと
- 答えはどれだけ桁数が多くてもすべて正確です。ここでは何も丸めず、指数表記にもしません。