Aufgabenblock — AFB III
Begründen statt nur ausführen: Fehler erklären, Programme vergleichen und verallgemeinern. Formuliere deine Antwort erst selbst in ganzen Sätzen, bevor du die Musterlösung aufklappst.
Begründe in 3–4 Sätzen, warum sich die Turtle bei einem regelmäßigen n-Eck an jeder Ecke um 360° : n drehen muss.
Hinweis: Stell dir vor, du läufst selbst einmal um das Vieleck herum.
Musterlösung anzeigen (zählt als erledigt)
Musterlösung: Wenn die Turtle ein geschlossenes Vieleck abläuft, steht sie am Ende wieder am Start und schaut in dieselbe Richtung wie am Anfang. Dafür muss sie sich insgesamt genau einmal ganz herumgedreht haben, also um 360°. Bei einem regelmäßigen n-Eck sind alle n Drehungen gleich groß. Deshalb ist jede einzelne Drehung 360° : n groß.
Vergleiche die beiden Programme für ein Quadrat: acht einzelne Zeilen mit forward und left oder eine for-Schleife mit zwei eingerückten Zeilen. Nenne zwei Vorteile der Schleife.
Hinweis: Überlege, was passiert, wenn aus dem Quadrat ein Zehneck werden soll.
Musterlösung anzeigen (zählt als erledigt)
Musterlösung: Beide Programme zeichnen dasselbe Quadrat. Die Schleife ist aber kürzer: zwei Befehle statt acht. Soll die Seitenlänge geändert werden, muss man sie nur an einer Stelle ändern statt an vier — das vermeidet Fehler. Und für ein Zehneck ändert man nur range(4) in range(10) und den Winkel, statt 20 Zeilen zu schreiben.
Begründe, warum dieses Programm nur eine lange gerade Linie zeichnet statt eines Quadrats, und gib die Korrektur an.
for i in range(4): forward(50)left(90)
Hinweis: Achte darauf, welche Zeilen eingerückt sind.
Musterlösung anzeigen (zählt als erledigt)
Musterlösung: Zur Schleife gehört nur, was eingerückt ist — hier also nur forward(50). Die Turtle läuft deshalb viermal 50 Schritte in dieselbe Richtung und zeichnet eine 200 Schritte lange Linie. Erst danach dreht sie sich einmal um 90°. Richtig ist es, left(90) genauso weit einzurücken wie forward(50).
