透過 MCP 連接 →

輸入計算

數學公式

數學公式: 階乘與雙階乘計算器
Show calculation steps (1)
  1. Double factorial (real x)

    Double factorial (real x): 階乘與雙階乘計算器

    Even n: n*(n-2)*...*2; odd n: n*(n-2)*...*1; 0!!=1, (-1)!!=1. The closed form extends to real x.

廣告

結果

結果
120
計算方法 小整數採精確連乘;其餘情形採用 Gamma/log-gamma 函數

這個計算器的功能

本工具會針對輸入值 x 計算四種相關數值:階乘 x!、雙階乘 x!!,以及兩者的自然對數 ln(x!)ln(x!!)。只要從「函數」下拉選單挑選想計算的項目,輸入 x 值,就能讀取結果。由於這純粹是數學運算,沒有單位,也不需要任何換算。

使用方式

先選擇一個函數(x!、ln(x!)、x!! 或 ln(x!!)),在變數 x 欄位輸入數值後送出即可。當 x 為整數時,x! 與 x!! 會遵循傳統的組合定義。此外,引擎也接受實數(非整數):它採用 Gamma 函數,因此舉例來說,\(0.5! = \sqrt{\pi}/2\)。負整數則是 Gamma 函數的極點,階乘在此無定義。

公式解析

階乘透過 \(x! = \Gamma(x+1)\)(即 Gamma 函數)擴充到實數範圍。雙階乘則是每隔一項相乘:偶數 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!) = \operatorname{lgamma}(x+1)$$

平滑的伽瑪函數曲線,曲線上標出整數階乘值的點
伽瑪函數將階乘擴展到所有實數,整數階乘值落在曲線上。
示意圖:階乘為所有整數的乘積,雙階乘為每隔一個整數的乘積
階乘將每個整數一路乘到 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 會採用 Gamma 函數的廣義定義,能在整數值之間做出平滑的內插。

那負數的 x 呢?負的非整數是允許的(透過 Gamma 函數計算),但負整數是極點,階乘與雙階乘在此無定義。

最後更新: