この計算機でできること
この計算機は、指定した x の範囲について、関連する4つの値のいずれかを「表」と「折れ線グラフ」で表示します。選べるのは、階乗 x!、その自然対数 ln(x!)、二重階乗 x!!、そしてその自然対数 ln(x!!) の4種類です。いずれも純粋な数学計算で、国や単位に関係なく世界中どこでも同じ結果になります。
使い方
まずプルダウンから計算したい関数を選びます。次に範囲の始点(Range x from)、終点(Range x to)、そして刻み幅(Increment)を入力してください。x = 始点、始点+刻み幅、始点+2×刻み幅 … というように、終点を含めて行が生成されます。刻み幅は 0 より大きい値である必要があり、表が大きくなりすぎないよう最大101行までに制限されています。
計算式の解説
階乗は 1·2·3·…·x の積で、\(0! = 1\) と定義されます。大きな値や連続的なグラフ描画に対応するため、本計算機では階乗をガンマ関数で評価し、$$x! = \Gamma(x+1) = \prod_{k=1}^{x} k$$ として計算します。対数についても対数ガンマ関数を用いて $$\ln(x!) = \ln\Gamma(x+1)$$ とすることで、巨大な数でもオーバーフローしません。二重階乗は1つおきの項を掛け合わせるもので、たとえば \(6!! = 6\cdot 4\cdot 2 = 48\)、\(5!! = 5\cdot 3\cdot 1 = 15\) となります。基本となる値は \(0!! = 1\)、\(1!! = 1\)、\((-1)!! = 1\) です。負の整数では階乗は定義されない(ガンマ関数がその点で極を持つ)ため、該当する行は「undefined(未定義)」と表示されます。
計算例
x! を選び、範囲を 0 から 6、刻み幅を 1 にすると、7行の表が得られます:\(0!=1\)、\(1!=1\)、\(2!=2\)、\(3!=6\)、\(4!=24\)、\(5!=120\)、\(6!=720\)。ln(x!) に切り替えると、x=6 では \(\ln(720) \approx 6.5793\) となり、ln(x!!) では x=5 のとき \(\ln(15) \approx 2.7081\) になります。
よくある質問
x に小数を入れてもいいですか? はい。整数でない値はガンマ関数に基づく連続的な形で計算されるため、グラフは滑らかな曲線になります。
行に「infinity(無限大)」と表示されるのはなぜ? 階乗は非常に速く増大します(\(70! \approx 1.2\times 10^{100}\))。値が倍精度浮動小数点の範囲を超えると infinity と表示されます。その場合は有限値のまま扱える ln 版をお使いください。
なぜ101行までの制限があるのですか? 表が際限なく大きくなるのを防ぐためです。範囲を狭めるか刻み幅を大きくして調整してください。