Verwendung von mod() und if-else-Bedingung
Bei der Erstellung deines Programms fallen dir sicher Wiederholungen für das Zeichnen der Striche auf. Der Unterschied ist immer die wechselnde Farbe.
Also unser Ziel wird es sein eine Schleife zu haben, die 6-mal einen Strich zeichnet, dessen Farbe sich im Wechsel ändert.
Wenn wir an die Tabelle denken für die Division mit Rest, wurden die Werte für mod(i, 2) farblich hervorgehoben. Diesen Wechsel wollen wir auch für unsere gestrichelte Linie.
Um mit modulo zu rechnen, benötigen wir eine Variable z.B. myRest := mod(i, 2)
i ist dabei die Laufvariable deiner for-Schleife. Also füge die die neue Variable innerhalb der for-Schleife ein.
Im Anschluss daran wollen wir prüfen, ob der Rest 0 oder 1 ist.
Wenn der Rest 0 ist soll die Farbe pink (21) werden.
Wenn der Rest 1 ist soll die Farbe blau (7) werden.
Beim Programmieren können wir solche Bedingungen erstellen, sie werden if-else-Bedingung genannt. Bevor wir diese Bedingung programmieren, benötigen wir noch eine weitere Variable für die Farbe. Diese Variable soll am Anfang unseres Programms
erstellt werden. Sie kann z.B. myFarbe heißen und der Wert zu Beginn unseres Programms kann 0 sein.
var myFarbe := 0
Nun wenden wir uns der for-Schleife wieder zu, in der du die Variable myRest stehen hast. Darunter folgt nun die if-Bedingung, in der du prüfst, ob myRest == 0 ist. Wenn die Prüfung den Wert wahr liefert,
soll nun die Variable myFarbe := 21 werden. Sonst soll myFarbe := 7 werden.
Der ProgrammCode könnte zum Beispiel wie folgt aussehen:
function main() {
var myFarbe := 0
for(var i < 6) {
var myRest := mod(i,2)
if(myRest == 0) {
myFarbe := 21
}else {
myFarbe := 7
}
turtle->setPenColor(myFarbe)
}
}
Was fehlt ist noch der Strich, den die Turtle zeichnen soll.