Rekursion
In diesem Beispiel wird die Fakultät berechnet. Dies kann auf zwei verschiedene Weisen geschehen.
1. Iteration (Funktion ruft sich NICHT selbst auf)
def fakultaet(x):
erg = 1
while(x > 1):
erg *= x
x -= 1
return erg
print(fakultaet(int(input("Bitte geben Sie eine Zahl ein um ihren Fakultaetswert zu berechnen.\n"))))
# spezielle Rechenoperatoren
# x = x + 1 <-> x += 1 (x wird um eins erhöht, d.h. inkrementiert)
# x = x * 3 <-> x *= 3 (x wird mit 3 multipliziert)
# x = x - 1 <-> x -= 1 (x wird um eins verkleinert, d.h. dekrementiert)
# x = x / 2 <-> x /= 2 (x wird durch 2 geteilt)
# Startwert x | Nummer Schleifendurchlauf | erg | x
#-------------|---------------------------|-----|---
# 3 | 0. | 1 | 3
# | 1. | 3 | 2
# | 2. | 6 | 1
2. Rekursion (Funktion ruft sich selbst auf)
def fakultaet(x):
if x > 1:
return x * fakultaet(x - 1)
else:
return 1
print(fakultaet(int(input("Bitte geben Sie eine Zahl ein um ihren Fakultaetswert zu berechnen.\n"))))
# Startwert x | Aufruf der Funktion
#-------------|----------------------
# 3 | 1.
# 2 | 2.
# 1 | 3.