这个计算器能做什么
本工具可针对一个数值 x 计算四个相关结果:阶乘 x!、双阶乘 x!!,以及它们各自的自然对数 ln(x!) 与 ln(x!!)。只需在「函数」下拉框中选择想要的结果,输入 x 的取值,即可读取答案。整个运算是无量纲的,因此不涉及任何单位或换算。
使用方法
先选择一个函数(x!、ln(x!)、x!! 或 ln(x!!)),在变量 x 中填入数值,然后提交。对于整数,x! 与 x!! 沿用经典的组合学定义。计算引擎同样支持实数(非整数):它借助伽马函数求值,例如 \(0.5! = \sqrt{\pi}/2\)。负整数对应伽马函数的极点,此时阶乘无定义。
公式详解
阶乘通过 \(x! = \Gamma(x+1)\)(即伽马函数)推广到实数。双阶乘则每隔一项相乘:偶数 n 为 \(n\cdot(n-2)\cdot\cdots\cdot 2\),奇数 n 为 \(n\cdot(n-2)\cdot\cdots\cdot 1\),并约定基准情形 \(0!! = 1\) 与 \((-1)!! = 1\)。一个统一的封闭表达式可覆盖所有实数 x:
$$x!! = 2^{\frac{x}{2}+\frac{1-\cos\pi x}{4}}\,\pi^{\frac{\cos\pi x - 1}{4}}\,\Gamma\!\left(\tfrac{x}{2}+1\right)$$对于非常大的自变量,计算器会在对数空间中借助对数伽马函数(log-gamma)运算,从而避免溢出:
$$\ln(x!) = \text{lgamma}(x+1)$$
实例演示
设函数 = x!!,x = 6。6 的双阶乘为 \(6\cdot 4\cdot 2 = 48\)。切换到 ln(x!!) 则得到 \(\ln(48) \approx 3.8712010109\)。同理,x = 5 选择 x! 得到 \(1\cdot 2\cdot 3\cdot 4\cdot 5 = 120\),而 5 的 ln(x!) 为 \(\ln(120) \approx 4.7874917428\)。
常见问题
为什么要提供对数版本? 阶乘增长极快,在 \(x \approx 1.7\times 10^{308}\) 附近就会让普通浮点数溢出。对数输出让你能够精确处理天文级别的超大自变量。
x 可以是小数吗? 可以。非整数 x 采用伽马函数的推广形式,从而在整数取值之间平滑插值。
负数 x 怎么办? 负的非整数是允许的(通过伽马函数计算),但负整数对应极点,此时阶乘与双阶乘都无定义。