Ü5 Aufgabe 2.2

proto
Neuling
Neuling
Beiträge: 6
Registriert: 12. Mai 2013 18:59

Ü5 Aufgabe 2.2

Beitrag von proto »

Hallo,

kann mir jemand erklären, warum bei dem Beispiel auf Folie 90 beim letzten Schritt vor dem letzten -F der Zustand zuerst auf dem Stack gespeichert wird und danach wieder vom Stack gelesen wird. Kann man sich das Speichern auf den Stack nicht sparen, weil der Baum mit -F sowieso schon fertig ist??

sebastian@TU
Nichts ist wie es scheint
Beiträge: 23
Registriert: 2. Nov 2012 10:09

Re: Ü5 Aufgabe 2.2

Beitrag von sebastian@TU »

Meiner Meinung nach kann man ja vor dem Ausführen des Schrittes nicht wissen, ob es dann von diesem Knoten noch einmal weiter gehen wird (theoretisch wäre ja noch ein Knick nach liinks möglich, oder?)

Demnach Frage ich mich auch, ob in Schrit 5 des Beispiels nicht auch noch ein Push auf den Stack erfolgen müsste, bevor einfach nach vorne gegangen wird? Somit wäre es eigentlich:
5: F [+F][-F[-F][F
6: F [+F][-F[-F][F]]F

Nach ein bisschen suchen im Internet habe ich ein HTML5 Tool entdeckt (http://www.kevs3d.co.uk/dev/lsystems/) mit dem man seine Notation testen kann (Iteration: 1 Angle: 45 und Axiom: erstellter String, alles andere frei lassen)... Beide Notationsvarianten für das Beispiel der Vorlesung führen zu dem gleichen Ergebnis, was darauf schließen lässt, dass die Notation für einen Baum nicht eindeutig ist (es gibt ja auch keine Regel, die besagt ob man zuerst dreht oder gleich nach vorne geht).

FloM-KOM
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 279
Registriert: 27. Apr 2010 17:20

Re: Ü5 Aufgabe 2.2

Beitrag von FloM-KOM »

proto hat geschrieben:Hallo,

kann mir jemand erklären, warum bei dem Beispiel auf Folie 90 beim letzten Schritt vor dem letzten -F der Zustand zuerst auf dem Stack gespeichert wird und danach wieder vom Stack gelesen wird. Kann man sich das Speichern auf den Stack nicht sparen, weil der Baum mit -F sowieso schon fertig ist??
Ja, der resultierende Baum wäre identisch. Will man allerdings noch weitere Zweige hinzufügen ist es praktisch den Zustand vorher gespeichert zu haben.
proto hat geschrieben:Demnach Frage ich mich auch, ob in Schrit 5 des Beispiels nicht auch noch ein Push auf den Stack erfolgen müsste, bevor einfach nach vorne gegangen wird? Somit wäre es eigentlich:
5: F [+F][-F[-F][F
6: F [+F][-F[-F][F]]F
Es muß nicht unbedingt, könnte aber wie gesagt praktischer sein.
sebastian@TU hat geschrieben:Beide Notationsvarianten für das Beispiel der Vorlesung führen zu dem gleichen Ergebnis, was darauf schließen lässt, dass die Notation für einen Baum nicht eindeutig ist (es gibt ja auch keine Regel, die besagt ob man zuerst dreht oder gleich nach vorne geht).
Genau, die Notation ist nicht eindeutig. Beispielsweise kann man die geklammerten Stücke miteinander vertauschen solange kein ungeklammertes F dazwischen kommt.

Antworten

Zurück zu „Archiv“