順列・組み合わせ計算機(nPr、nCr)
同じ n と r から nPr(順列)と nCr(組み合わせ)を計算し、実際の階乗の約分手順を BigInt の正確な演算でステップごとに表示します。
🔒 ブラウザ内で完全に処理されます。ここに入力した内容はアップロードされません。
結果
順列(nPr)は n 個のものから r 個を選んで並べる方法の総数を、組み合わせ(nCr)は同じ選択を順序を無視して数えます。この計算機は n と r を入力すると両方を一度に計算するので、単に選ぶだけの場合よりも並べる場合のほうがどれだけ多いかがすぐにわかります。
多くの計算機は nPr を求めるのに n! と (n-r)! を別々に計算してから割ります。これは大部分がキャンセルされるだけの巨大な階乗を計算していることになります。このツールはその無駄を完全に省き、nPr = n × (n-1) × ... × (n-r+1) をちょうど r 個の降順の項の積として直接構築します。これはすでに約分済みの形です。8P3 ならその掛け算チェーンは 8 × 7 × 6 = 336 と、手計算の手順そのままに表示されます。nCr はその同じチェーンを r! = r × (r-1) × ... × 1 で割ります。8C3 なら 336 ÷ (3 × 2 × 1) = 336 ÷ 6 = 56 と、分数比としてではなく明示的な除算として表示されます。
すべてのステップで JavaScript の任意精度整数型である BigInt を使用しているので、浮動小数点の丸め誤差は一切ありません。n が数百まで大きくなっても結果は正確な整数のままで、通常の計算機の階乗が倍精度浮動小数点の上限を超えて桁落ちし始めるような近似値にはなりません。項が10を超える掛け算チェーンは読みやすさのために先頭の数項、省略記号、最後の数項の形で短縮表示されますが、内部の計算では常にすべての項が使われます。
順列と組み合わせは、確率、統計、宝くじやトランプのオッズ、スケジュールや座席の配置、組合せ論の宿題などで常に登場します。すべての処理はブラウザ内でローカルに実行され、サインアップもサーバー通信も不要です。完全なステップごとの計算過程はワンクリックでプレーンテキストとしてコピーでき、宿題や資料作成に役立ちます。