Die Quadrat-Treppe
AFB I–IIEin Programm zeichnet mehrere Quadrate:
from turtle import *def quadrat(seite): for i in range(4): forward(seite) left(90)quadrat(20)forward(20)quadrat(40)forward(40)quadrat(60)
- Beschreibe das Ergebnis.
- Bestimme die Endposition der Turtle.
- Entwickle eine kürzere Version mit einer Schleife.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
Drei nebeneinanderliegende Quadrate mit den Seitenlängen 20, 40 und 60, die jeweils am rechten unteren Eck des vorigen beginnen — wie eine Treppe.
Erwartungshorizont zu Aufgabe b)
Nach forward(20) und forward(40) steht sie bei (60|0); das letzte Quadrat endet dort wieder. Endposition (60|0).
Erwartungshorizont zu Aufgabe c)
for k in range(1, 4): mit quadrat(k * 20) und forward(k * 20).
Ein Parameter reicht nicht
AFB II–IIILisa möchte mit def rechteck(breite): Rechtecke verschiedener Breite und Höhe zeichnen.
- Erläutere, warum ein Parameter dafür nicht genügt.
- Stelle eine Vermutung auf, wie die Funktion mit zwei Werten aussehen könnte.
- Beurteile Lisas Notlösung, die Höhe immer als halbe Breite zu zeichnen.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
Ein Rechteck hat Breite und Höhe. Mit nur einem Parameter kann man eine der beiden nicht frei wählen; sie wäre fest im Körper eingetragen.
Erwartungshorizont zu Aufgabe b)
def rechteck(breite, hoehe): und beim Aufruf rechteck(80, 40).
Erwartungshorizont zu Aufgabe c)
Die Notlösung funktioniert, aber alle Rechtecke haben dann dasselbe Seitenverhältnis 2 : 1. Für beliebige Rechtecke ist sie ungeeignet — ein zweiter Parameter ist besser.
