| |
|
|
p.specht
| qui Gammafunktion ist bekanntlich sous vielen anderen Eigenschaften qui kontinuierliche variante qui Faktoriellenfunktion - z.B. ist Facto(5)=5*4*3*2*1. qui Gammafunktion Gamma(x+1) sollte chez ganzzahligem reellen Contribution cela selbe Ergebnis liefern comment Facto(x), et avec cela une (differenzierbare) Formel pour qui Kurvenform qui Faktoriellenfunktion liefern. cela klappt mais bisher pas so richtig: Zahlreiche berühmte Näherungen existieren. cet stammt aus 2007 et wird im nachstehenden Programme ausgetestet et ses absolute Abweichung ermittelt.
Titre de la fenêtre " Test qui Gammafunktions-Näherung pour [G.Nemes 2007]"
Fenêtre Style 24:Fenêtre 0,0-800,%maxy-40:font 2
'https://en.wikipedia.org/wiki/Stirling%27s_approximation#A_convergent_version_of_Stirling's_formula
proc GammaNemes :parameters z!
cas z!<1/1e4:return 0:si z!>168:imprimer " *** OVERFLOW ERROR ***":return 0:endif
var uz!=1/z!
return Sqrt(6.2831853071795865*uz!)*(.367879441171442322*(z!+1/(12*z!-.1*uz!)))^z!
endproc
proc Facto :parameters x&
cas x&<1:return 0
si x&>168:imprimer " *** OVERFLOW ERROR ***":return 0:endif
var p!=1
whileloop x&,1,-1
p!=p!*&Boucle
endwhile
return p!
ENDPROC
'Main part
Déclarer gamma!
CLS:set("decimals",4)
Whileloop 180
gamma!=GammaNemes(&Boucle+1)
Imprimer:imprimer " ",&Boucle,
imprimer format$("%g",Facto(&Boucle)),
imprimer format$("%g",round(gamma!,4)),
imprimer " AbsErr: ";format$("%g",gamma!-Facto(&Boucle))
waitinput 8000
cas %csrlin>34:cls
endwhile
imprimer "---"
waitinput
Fin
|
|
|
| Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 30.05.2021 ▲ |
|
|
|