Robot Karol: Türme und Treppen bauen
>>> zurück zur Übersicht von Robot Karol
Version 1: Anweisungen durch zusätzliche Angaben variieren - Parameter
Wir wollen jetzt verschieden hohe Türme bauen. Dazu geben wir einer Anweisung BauTurm zusätzlich die Info mit, wie viele Ziegel der Turm hoch sein soll: Aus BauTurm wird BauTurm(4).
In der Definition der Anweisung muss ein Platzhalter stehen. Den darf man frei wählen.
Anweisung BauTurm(X) wiederhole X mal Hinlegen *wiederhole *Anweisung
BauTurm(4) LinksDrehen BauTurm(3)
Version 2: Eine Treppe fester Höhe bauen
Nachdem wir jetzt beliebige Türme bauen können, wollen wir das jetzt gleich anwenden, indem wir eine Treppe bauen.
Aufgabe: Es ist ziemlich knifflig, einen Treppenbau beliebiger Höhe als Anweisung zu entwerfen, weil man sich in dieser Programmiersprache keine "Zahlen merken kann".
Anweisung BauTurm(X) wiederhole X mal Hinlegen *wiederhole *Anweisung
Anweisung BauTreppe8 BauTurm(1) Schritt BauTurm(2) Schritt BauTurm(3) Schritt BauTurm(4) Schritt BauTurm(5) Schritt BauTurm(6) Schritt BauTurm(7) Schritt BauTurm(8) Schritt LinksDrehen LinksDrehen Schritt Schritt Schritt Schritt Schritt Schritt Schritt Schritt LinksDrehen LinksDrehen *Anweisung
BauTreppe8
Version 3: Eine breitere Treppe bauen
Wenn wir jetzt die Anweisung nebeneinander mehrmals benutzen, können wir breitere Treppen bauen.
Aufgabe: Kannst Du eine Anweisung schreiben, die beliebig breite Treppen baut?.
Anweisung BauTurm(X) wiederhole X mal Hinlegen *wiederhole *Anweisung
Anweisung BauTreppe8 BauTurm(1) Schritt BauTurm(2) Schritt BauTurm(3) Schritt BauTurm(4) Schritt BauTurm(5) Schritt BauTurm(6) Schritt BauTurm(7) Schritt BauTurm(8) Schritt LinksDrehen LinksDrehen Schritt Schritt Schritt Schritt Schritt Schritt Schritt Schritt LinksDrehen LinksDrehen *Anweisung
BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 LinksDrehen Schritt RechtsDrehen BauTreppe8 RechtsDrehen Schritt Schritt Schritt Schritt LinksDrehen