0 ≦ r ≦ n の整数を入力してください。
順列 nPr:異なる n 個から r 個を選んで並べる場合の数。
nPr = n! / (n−r)! = n×(n−1)×…×(n−r+1)(r個の連乗)
組合せ nCr:異なる n 個から r 個を選ぶ(順序を区別しない)場合の数。
nCr = n! / ( r! × (n−r)! ) = nPr ÷ r!
桁あふれを避けるため階乗を直接計算せず、必要な分だけを連乗して求めています。値が非常に大きい場合は概数(指数表記)で表示されます。
n個のものからr個を選ぶときの「並べ方の総数(順列nPr)」と「選び方の総数(組合せnCr)」を一度に計算できます。くじや席順、当選確率の母数、場合の数の問題まで、数え上げの基本がすぐ求められます。
順列 nPr = n! ÷ (n−r)! は「並べる順番を区別する」数え方です。たとえば5人から3人を選んで1列に並べると、5P3 = 5×4×3 = 60通り。
組合せ nCr = n! ÷ (r!×(n−r)!) = nPr ÷ r! で、「順番を区別しない」数え方です。先ほどの5人から3人を選ぶ(並べない)場合は、5C3 = 60 ÷ (3×2×1) = 10通り。nPrをr!で割って重複した並び順を取り除いた形です。
Q. 順列と組合せはどう使い分けますか?
A. 「順番が意味を持つ」なら順列(nPr)、「選ぶだけで順番は関係ない」なら組合せ(nCr)です。リレーの走順や表彰の1〜3位は順列、班分けやくじの当選は組合せになります。
Q. r=0 のときはどうなりますか?
A. 0!=1 と定義されるため、nP0=1、nC0=1 になります。「何も選ばない選び方が1通りある」と考えると自然です。
Q. nが大きいと数字が巨大になりますが大丈夫?
A. 階乗は急増するため、約分しながら計算するのが基本です。本ツールは内部で計算しますが、桁が非常に大きい場合は丸め誤差が出ることがあります。