Rekursion mit und ohne return
Verfasst: Donnerstag 9. August 2018, 14:17
Hallo liebes Forum,
wir hatten in der Vorlesung ein Beispiel zu Rekursion gemacht:
Als Output erhält man ja:
1
2
3
3
2
1
Die ersten drei Outputs sind mir klar, da solange i < 3 ist die Funktion erneut ausgeführt wird.
Ich verstehe nur nicht genau wie die drei Zeilen darunter zustande kommen. In unserem Skript steht nur als Stichwort Call Stack. Ich weiß was ein Stack ist, aber was hat der damit zu tun?
Und zuletzt verstehe ich nicht, warum die Ausgabe sich zu
1
2
3
3
ändert, wenn ich schreibe.
Kann mir das jemand erklären oder einen Link zu einer Erklärung schicken?
Danke und viele Grüße
René
wir hatten in der Vorlesung ein Beispiel zu Rekursion gemacht:
Code: Alles auswählen
def kaboom(i):
print(i)
if i < 3:
kaboom(i+1)
print(i)
kaboom(1)
1
2
3
3
2
1
Die ersten drei Outputs sind mir klar, da solange i < 3 ist die Funktion erneut ausgeführt wird.
Ich verstehe nur nicht genau wie die drei Zeilen darunter zustande kommen. In unserem Skript steht nur als Stichwort Call Stack. Ich weiß was ein Stack ist, aber was hat der damit zu tun?
Und zuletzt verstehe ich nicht, warum die Ausgabe sich zu
1
2
3
3
ändert, wenn ich
Code: Alles auswählen
return kaboom(n-1)
Kann mir das jemand erklären oder einen Link zu einer Erklärung schicken?
Danke und viele Grüße
René