← ホーム

🔢 階乗計算

任意の非負整数の階乗を即座に計算します。

このツールとは?

階乗計算ツールは、任意の非負整数の階乗を計算する無料のオンラインツールです。階乗は組み合わせ論、確率論、数学やコンピュータサイエンスの多くの分野における基本概念です。この計算ツールは任意精度演算を使用して大きな入力を完全な精度で処理します。 非負整数nの階乗(n!と表記)は、1からnまでのすべての正の整数の積です。例えば、5! = 5 × 4 × 3 × 2 × 1 = 120です。定義により、0! = 1です。階乗は極めて急速に成長します:10!はすでに3,628,800、20!は約2.4 × 10¹⁸、100!は158桁になります。この急速な成長により、階乗は順列や組み合わせの計算に不可欠です。 階乗は数学の至る所に現れます。オブジェクトを配置する方法の数(順列)、集合からアイテムを選択する方法の数(組み合わせ)、二項定理の係数、微分積分のTaylor級数展開、Poisson分布などの確率分布の計算に使用されます。この計算ツールはBigInt演算を使用して、精度を落とすことなく任意の大きな階乗を処理します。

仕組み

この計算ツールはJavaScriptの組み込み任意精度整数型であるBigIntを使用して階乗を計算します。通常のJavaScriptの数値は2⁵³(約9 × 10¹⁵)を超える整数で精度を失いますが、これは20!以上が通常の数値では不正確になることを意味します。BigIntはこの制限を完全に回避するため、計算ツールは1000!以上の大きな階乗も正確な精度で計算できます。 アルゴリズムはシンプルな反復乗算です。1から始め、2からnまでの各整数を掛けます。非常に大きな数の効率向上のため、実装は大きなBigInt値の乗算に分割統治アプローチを使用しており、大きな入力に対しては単純な逐次乗算より高速です。 計算ツールは結果の桁数も提供します。これは大きな階乗の規模を理解するのに役立ちます。検証のためにStirlingの近似公式を使用して桁数を見積もります:log₁₀(n!) ≈ n × log₁₀(n) - n × log₁₀(e) + 0.5 × log₁₀(2πn)。
Ad

使い方

  1. 非負整数(0〜10000)を入力します。
  2. 計算ボタンをクリックして階乗を計算します。
  3. 桁数付きの正確な結果を表示します。
  4. 完全な結果をクリップボードにコピーします。
  5. 異なる値を試して階乗の成長を探ります。

よくある質問

よくある質問

階乗はどれくらい速く成長しますか?
階乗は指数関数よりも速く成長します。5! = 120、10! = 3,628,800、20! ≈ 2.4 × 10¹⁸です。70!に達すると、結果は観測可能な宇宙の原子数を超えます。

なぜ0!は1なのですか?
定義により、0! = 1です。これにより数学的公式が一貫します。例えば、0個のオブジェクトを配置する方法は1通り(空の配置)であり、組み合わせ公式C(n,0) = 1は0! = 1を必要とします。

計算できる最大の階乗は?
この計算ツールはBigInt演算を使用して10000!までの階乗を処理します。それを超えると、計算に時間がかかりすぎるか、結果が大きすぎて効率的に表示できない場合があります。

階乗は実生活でどのように使われますか?
階乗は順列を数えます:5冊の本は棚に5! = 120通りに配置できます。確率論(Poisson分布)、統計学(二項係数)、物理学(量子力学)、コンピュータサイエンス(アルゴリズム分析)で使用されます。

ヒントとアドバイス

階乗は組み合わせ論の基礎です。n個の異なるオブジェクトを配置する方法の数はn!です。n個からk個を選ぶ方法の数はn! / (k! × (n-k)!)です。大きな階乗を扱う場合、Stirlingの近似が素早い見積もりを与えます:n! ≈ √(2πn) × (n/e)ⁿ。階乗は指数関数より速く成長することを忘れないでください。そのため、階乗時間計算量のアルゴリズム(総当たりの順列など)はn > 12程度で非実用的になります。階乗を含む確率計算では、掛け算の前に項を約分することで、巨大な中間数を扱うのを避けられることがよくあります。

関連ツール

Ad