Das Geheimnis der unsichtbaren Turtle
AFB I–IILeon wundert sich: „Ich habe die Turtle versteckt, aber sie malt immer noch!“
from turtle import *hideturtle()forward(100)left(90)forward(100)
- Erkläre Leons Beobachtung.
- Nenne den Befehl, mit dem Leon wirklich ohne Linien laufen könnte.
- Vergleiche die Ergebnisse, wenn man Zeile 2 durch
penup()ersetzt.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
hideturtle() blendet nur die Turtle aus. Der Stift ist weiterhin unten, deshalb entstehen die Linien.
Erwartungshorizont zu Aufgabe b)
penup().
Erwartungshorizont zu Aufgabe c)
Mit penup() sieht man keine Linien, aber die Turtle am Ende bei (100|100). Mit hideturtle() sieht man beide Linien, aber keine Turtle.
Sichtbar oder nicht?
AFB II–IIIIn einem Programm mit vielen Drehungen steht ganz oben hideturtle(). Bei einer Figur stimmt ein Winkel nicht, und Emil findet den Fehler nicht.
- Erläutere, warum die unsichtbare Turtle die Fehlersuche erschwert.
- Entwickle eine Vorgehensweise für die Fehlersuche.
- Beurteile, ob hideturtle() in fertigen Programmen sinnvoll ist.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
Die sichtbare Turtle zeigt nach jedem Schritt Ort und Blickrichtung. Ohne sie sieht man nur die Linien und muss die Richtungen im Kopf nachverfolgen.
Erwartungshorizont zu Aufgabe b)
hideturtle() vorübergehend entfernen (oder showturtle() einfügen) und das Tempo mit speed(1) senken. So sieht man bei jeder Zeile, wohin die Turtle schaut. Nach der Korrektur hideturtle() wieder einfügen.
Erwartungshorizont zu Aufgabe c)
Ja: Das fertige Bild wirkt sauberer, und das Zeichnen geht oft schneller. Während der Entwicklung ist die sichtbare Turtle hilfreicher.
