RosettaCodeData/Task/Gamma-function/Phixmonti/gamma-function.phixmonti
2023-07-01 13:44:08 -04:00

41 lines
772 B
Text

0.577215664901 var gamma
-0.65587807152056 var coeff
-0.042002635033944 var quad
0.16653861138228 var qui
-0.042197734555571 var theSet
def recigamma var z /# n -- n #/
z 6 power theSet *
z 5 power qui *
z 4 power quad *
z 3 power coeff *
z 2 power gamma *
z + + + + +
enddef
/# without var
def recigamma
dup 6 power theSet * swap
dup 5 power qui * swap
dup 4 power quad * swap
dup 3 power coeff * swap
dup 2 power gamma * swap
+ + + + +
enddef
#/
def gammafunc /# n -- n #/
dup 1 == if
else
dup abs 0.5 <= if
recigamma 1 swap /
else
dup 1 - gammafunc swap 1 - *
endif
endif
enddef
0.1 2.1 .1 3 tolist
for
dup print " = " print gammafunc print nl
endfor