Schleifen — `solange`, `für`, `wiederhole`
Schleifen wiederholen Code mehrmals.
7.1 solange (while)
Solange die Bedingung wahr ist, wiederhole:
nimm i = 0
solange i < 5 {
sag "Durchgang {i}"
i += 1
}
Ausgabe:
Durchgang 0
Durchgang 1
Durchgang 2
Durchgang 3
Durchgang 4
Achtung: Vergiss nicht, die Variable zu erhöhen! Sonst läuft die Schleife ewig (Endlosschleife).
7.2 für (klassische Zähl-Schleife)
für i = 1 bis 10 {
sag i
}
Ausgabe: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Hinweis: bis 10 ist inklusiv — die 10 ist dabei.
7.3 für mit Schrittweite
für i = 0 bis 100 schritt 10 {
sag i
}
Ausgabe: 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
7.4 wiederhole (for-each, über Sammlungen)
Gehe durch jedes Element einer Liste:
nimm farben = ["rot", "grün", "blau"]
wiederhole farbe in farben {
sag farbe
}
Ausgabe:
rot
grün
blau
Über eine Karte:
nimm person = {"name": "Sascha", "alter": 38}
wiederhole schlüssel, wert in person {
sag "{schlüssel} = {wert}"
}
Ausgabe:
name = Sascha
alter = 38
7.5 springe und weiter
springe — beende die Schleife sofort:
für i = 1 bis 100 {
wenn i > 10 {
springe
}
sag i
}
// Gibt 1 bis 10 aus
weiter — springe zur nächsten Iteration:
für i = 1 bis 10 {
wenn i % 2 == 0 {
weiter
}
sag i
}
// Gibt nur ungerade Zahlen aus: 1, 3, 5, 7, 9
7.6 Beim Bauen zur .exe
Wenn du dieses Kapitel als .exe bauen willst (kiste build, Kapitel 33): Diese Stellen gehören zu denen, die der native Compiler noch nicht kennt.
springe— nimm eine Merk-Variable in die Bedingung:nimm läuft = wahr…solange i < 9 und läuft { … läuft = falsch }.weiter— dreh die Bedingung um: stattwenn i == 2 { weiter }schreibst duwenn nicht (i == 2) { … }.
Ob weitere Stellen betroffen sind, sagt dir der Compiler beim Bauen — die verlässliche Auskunft steht in Abschnitt 39, nicht in diesem Kasten.