Gerade oder ungerade?
AFB I–IIEin Programm zeichnet Punkte:
from turtle import *penup()for i in range(8): if i % 2 == 0: dot(20, "blue") else: dot(10, "red") forward(30)
- Beschreibe das Ergebnis.
- Begründe, warum nie zwei große Punkte nebeneinanderliegen.
- Entwickle eine Änderung für das Muster groß–klein–klein.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
Eine Reihe aus 8 Punkten im Abstand von 30 Pixeln: abwechselnd große blaue (bei i = 0, 2, 4, 6) und kleine rote (bei i = 1, 3, 5, 7).
Erwartungshorizont zu Aufgabe b)
i % 2 ist abwechselnd 0 und 1. Deshalb wechseln if- und else-Teil bei jedem Durchlauf; zwei gerade Werte folgen nie direkt aufeinander.
Erwartungshorizont zu Aufgabe c)
if i % 3 == 0: statt i % 2 == 0.
Drei Fälle
AFB II–IIIEin Balken soll grün sein, wenn der Wert unter 50 liegt, gelb bei 50 bis 79 und rot ab 80.
- Stelle die Verzweigung mit if, elif und else auf.
- Überprüfe deine Lösung mit den Werten 49, 50, 79 und 80.
- Beurteile die Lösung mit drei einzelnen if-Befehlen
if wert < 50,if wert < 80,if wert >= 80.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
if wert < 50: → color("green"), elif wert < 80: → color("gold"), else: → color("red").
Erwartungshorizont zu Aufgabe b)
49 → grün, 50 → gelb (nicht < 50, aber < 80), 79 → gelb, 80 → rot. Die Grenzen stimmen.
Erwartungshorizont zu Aufgabe c)
Bei 30 wären die ersten beiden Bedingungen wahr: Erst würde grün, dann gelb gesetzt — der Balken wäre gelb. Mit einzelnen if-Befehlen können mehrere Teile laufen; mit elif läuft genau einer. Die elif-Lösung ist richtig.
