Lernpfad:Rekursion in Java/Aufrufstapel: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Arbeitsauftrag
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
{{Navigation}} | |||
== Der Aufrufstapel == | == Der Aufrufstapel == | ||
[[Datei:01_Rekursion_Aufrufstack_Fakultaet.png |right|800px|frame|center|Aufrufstapel der Methode Fakultät.]] | [[Datei:01_Rekursion_Aufrufstack_Fakultaet.png |right|800px|frame|center|Aufrufstapel der Methode Fakultät.]] | ||
Version vom 2. Januar 2019, 13:38 Uhr
Der Aufrufstapel
Intern werden die Methodenaufrufe einer rekursiven Methode auf einem Stapel gespeichert. Die Methoden, die ganz oben auf dem Stapel liegen, werden zuerst abgearbeitet. Danach wird das Resultat der Methode verwendet, um die darunterliegenden Methoden zu berechnen.
| Die Methode z | Ergänzen Sie den Aufrufstapel zu dem Methodenaufruf z(5) . | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
public int z(x) {
if (x > 1){
return a + z(x - 2);
}else{
return 1;
}
}
|
|
Lösung
| z(1) | 1 | |||
| z(3) | z(3) | 3+1=4 | ||
| z(5) | z(5) | z(5) | z(5) | 5+4=9 |
