伽瑪函數(I)
這個程利用Lanczos approximation的方法去計算伽瑪函數的值,能夠準確至有效數字九至十位。第一個程式只能計算正實數的伽瑪函數,第二個程式則能計算任何實數的伽瑪函數。
程式編日期: 2014年5月15日
注意: e是按shift ex。
第一個程式 (100 bytes,使用記憶為A)
?→A: A+3: (Ans + . 85)^(A - . 5) e - Ans (1.071370357
+ 39.41066934 ÷ A - 35.55136409 ÷ (A + 1) - . 0943944629 ÷ Ans
+ 6.326951402 ÷ (A + 2
第二個程式 (126 bytes,使用記憶A及B)
注意: e是按shift ex,πr 是按 Shift EXP Shift Ans 2。
?→B: √ B2→A: A+3: (Ans + . 85)^(A - . 5) e - Ans (1.071370357
+ 39.41066934 ÷ A - 35.55136409 ÷ (A + 1) - . 0943944629 ÷ Ans
+ 6.326951402 ÷ (A + 2→A: 0>B => - π ÷ AB sin( Bπr→A: A
例題1: 計算Γ(0.35)的值。
按 Prog 1 再按 0.35 EXE (顯示答案為2.546146978)
例題2: 計算Γ(- 0.35)的值。
只適用於第二個程式
按 Prog 1 再按 - 0.35 EXE (顯示答案為 -3.956557433)
註1: 對於正整數 n的伽瑪函數,可以利用計算機的乘階功能直接計算,即 Γ(n) = (n-1)!。
註2: 有關伽瑪函數的參考資料,可以參閱以下網址的資料:
Gamma Function - from Wolfram MathWorld