伽瑪、雙伽瑪及三伽瑪函數
程式更新日期: 2014年7月30日
程式由網友 Skwai提供。
注意: e^( 是按shift ex。若果不想記存兩根,程式中綠色部份可以不輸入。
程式 (195 或 191 bytes
ClrMemory: ?→X: 1: While Ans: Abs( X→C: C + 3:
( Ans + . 85 )^( C - . 5 )e^( - Ans )( 1.071370357
+
39.41066934 ÷ C - 35.55136409 ÷ ( C + 1 ) - . 0943944629 ÷ Ans +
6.326951402 ÷ ( C + 2→C: 0 > X => - π ÷ ( C X sin(
X πr→C:
X + E - 4 ( 1 - 3 M→X: D→A: B→D: C→B: M ≠ 2
M+ : WhileEnd:
A◢ 5 E 3 A-1( D - C→B◢
E 8A-1( D + C - 2 A ) - Ans2→C
註: 如果是使用fx-3650P II或fx-50FH II,上述程式碼中 - π ÷ ( C X sin( X πr→C: 可以簡化為 - π ÷ C X sin( X πr→C: 可節省1 byte。
限制:只支援約 | X | < 56 . 629( - 56 . 629 < X < 56 . 629 ) 的情況。當 X 很小時( - 2 < X < 2 ),準確度十分高( 9 ~ 10 位有效數字)。
但一般言; X 越大,準確度越低。
Gamma 的準確度十分高( 9 ~ 10 位有效數字);
Digamma 的準確度一般( 5 ~ 7 位有效數字);
Trigamma 的準確度極低( 2 ~ 3 位有效數字)。
例題: 計算伽瑪函數Γ(0.35)、雙伽瑪函數Ψ(0.35)及三伽瑪函數Ψ1(0.35)的值。
按 Prog 1 再按 0.35 EXE (顯示伽瑪函數Γ(0.35)為2.546146978)
EXE (顯示雙伽瑪函數Ψ(0.35)為-2.971071131)
EXE (顯示三伽瑪函數Ψ1(0.35)為9.240458817)