Rekursion..Reihenfolge

sh33p

Bekanntes Mitglied
Es geht um die Reihenfolge der Aufrufe des Blocks bzw. der Rekursiven Aufrufe des Blocks. Ein Block
stellt sowas wie eine Methode da.


block Lineal(ein: links € N, rechts € N, höhe € N)
lokal: mitte € N;
{
falls höhe > 0 dann {

Zeichne(mitte,höhe);
Lineal(links,mitte,höhe -1);
Lineal(mitte,rechts,höhe -1);
}
}


Wie finde ich heraus in welcher Reihenfolge der Block nacheinander aufgerufen wird? Wenn man den Block z.b it
Lineal (0,4,2) aufruft,dann soll sich diese Reihenfolge ergeben:

Lineal(0,4,2)
Zeichne(2,2)
Lineal(0,2,1)
Zeichne(1,1)
Lineal(0,1,0)
Lineal(1,2,0)
Lineal(2,4,1)
Zeichne(3,1)
Lineal(2,3,0)
Lineal(3,4,0)

Wie finde ich immer heraus,welcher Aufruf als nächstes kommt?
 

sh33p

Bekanntes Mitglied
ja ich verstehe aber nicht die Reihenfolge der aufrufe..wie finde ich heraus welcher aufruf nach welchem kommt?:(
 

Marco13

Top Contributor
Geht es um den konkreten Fall, oder wie man das z.B. in einer Klausur löst? Für den konkreten Fall: Einfach die Methode mal implementieren, und am Anfang ein
System.out.println(...)
rein, wo alles relevante ausgegeben wird. Für den Fall einer Klausur: Hmja,... da könnte ich als Strategie jetzt nichts konkretes nennen, außer aufmalen, aufschreiben, nachvollziehen und so...
 

Neue Themen


Oben