Besten Dank!
Du könntest
x = e^ln(x) bzw. hier besser
x = 10^lg(x) und
log(ab)=log(a)+log(b)
ausnutzen.
Dann kannst du x! schreiben als x! = 10^lg(1*2*3...*x) = 10^(lg(1)+...lg(x)).
Fürs Coden: Du berechnest zuerst
s = lg(1)+...lg(x)
Sei s = e + m, wobei e = trunc(s) und m = frac(s)
x! = 10^s = 10^(e+m) = 10^m * 10^e.
Output:
10^m rechnest du aus, e lässt du als Exponent stehen.
Ich fühl mich gerade zurückversetzt in die Zeiten des hp41CV...
.