264
Funktionen mit Wert
Kapitel
1
0
>>> fak(0)
1
>>> fak(1)
1
>>> fak(5)
120
>>> fak(10)
3628800
>>> fak(12)
479001600
>>> fak(15)
1307674368000
>>> fak(25)
15511210043330985984000000
>>> fak(70)
119785716699698917960727837216890987364589381425464258575553
62864628009582789845319680000000000000000
Langzahlarithmetik
Das Ergebnis von
fak(70)
zeigt uns, dass Python standardmäßig mit einer
unbeschränkten Ganzzahlarithmetik arbeitet. Das ist etwas, womit andere
gängige Programmiersprachen nicht dienen können.
Beispiel: Bei den meisten Taschenrechnern ist 69 die größte Zahl, für die
die Faktorielle berechnet werden kann. Außerdem wird sie nur näherungs-
weise als Kommazahl in »Exponentialdarstellung« angegeben, und zwar so:
>>> float(fak(69))
1.711224524281413e+098
>>>
Was so viel bedeutet wie 1.711224524281413*10
98
. In Wahrheit ist aber
>>> fak(69)
171122452428141311372468338881272839092270544893520369393648
040923257279754140647424000000000000000
Und zwar genau! Du kannst mit Python auch ohne weiteres
fak(10000)
berechnen. Nur musst du dabei eventuell in Kauf nehmen, dass die ermit-
telte Zahl auf deinem Bildschirm keinen Platz mehr findet. (Sie hat nämlich
35660 Stellen.)
So nebenbei will ich dir zum Abschluss verraten, wie viele verschiedene
Tippmöglichkeiten es beim Lotto 6 aus 49 gibt:

Get Python für Kids now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.