If you're seeing this message, it means we're having trouble loading external resources on our website.

Wenn du hinter einem Webfilter bist, stelle sicher, dass die Domänen *. kastatic.org und *. kasandbox.org nicht blockiert sind.

Hauptinhalt

Wiederholung: Schleifen

Dies ist eine Wiederholung von dem, was du in diesem Tutorial über Schleifen gelernt hast.
Wenn wir Programme schreiben, wollen wir oft ein Stück Code genau gleich oder mit nur wenigen Änderungen mehrere Male wiederholen. Um uns das wiederholte Schreiben des Codes zu sparen, können wir eine Schleife benutzen. In JavaScript gibt es zwei Arten von Schleifen, die while-Schleife und die for-Schleife.
Eine while-Schleife ist eine Möglichkeit, Code solange zu wiederholen, bis eine Bedingung false ist. Die folgende while-Schleife gibt z. B. solange wie y kleiner als 400 ist ihren Wert bei (30, y) aus. Die Schleife addiert bei jeder Ausführung (Iteration) 20 zu y hinzu. Y startet in dem Fall bei 40 und nimmt bei den Iterationen die Werte 60, 80, 100, 120, etc. an.
var y = 40;  while (y < 400) {  text(y, 30, y);  y += 20;  }
Es ist sehr wichtig, dass die Bedingung in der Klammer auch irgenwann false wird. Ansonsten haben wir eine sogenannte Endlosschleife, d. h. eine Schleife, die nie mehr aufhört. Dies würde z. B. dann passieren, wenn wir y += 20 entfernen würden, denn y wird in diesem Fall 40 bleiben und damit immer kleiner als 400 sein. Das Programm wird dann niemals stoppen.
var y = 40;
while (y < 400) {
    text(y, 30, y);
}
Die for-Schleife ähnelt einer while-Schleife, hat aber eine etwas andere Syntax. Programmierer haben die for-Schleife erfunden, als sie realisierten, dass sie immer die drei gleichen Dinge tun: Variablen als Zähler für die Schleife deklarieren (wie y im Beispiel oben), diese um einen bestimmten Betrag hochzählen (inkrementieren) und prüfen, ob diese Zählervariable kleiner als ein bestimmter Wert ist. Die Syntax der for-Schleife hat speziell definierte Stellen für diese drei Dinge. Diese Stellen werden Initialisierung, Test und Fortsetzung genannt. Im Folgenden findest du die gleiche Schleife wie im vorherigen Beispiel mit while-Schleife, nun einfach als for-Schleife geschrieben.
for (var y = 40; y < 400; y += 20) {
    text(y, 30, y);
}
Schleifen können auch verschachtelt werden. Es ist sogar sehr häufig, dass for-Schleifen verschachtelt werden, speziell in 2-D-Zeichungen, denn man kann somit ganz einfach gitterartige Formen zeichnen. Wenn wir eine Schleife verschachteln, sagen wir dem Programm, "mach dies X Mal und für jede Ausführung etwas anderes Y Mal ". Wenn wir z. B. ein Gitter zeichnen wollen, sagen wir dem Programm : "erstelle 10 Mal eine Spalte, und in jeder Spalte zeichne bitte 15 Zellen." Dies kannst du z. B. folgendermaßen programmieren:
for (var col = 0; col < 10; col++) {
    for (var row = 0; row < 15; row++) {
        rect(col*20, row*20, 20, 20);
    }
}
Wann solltest du eine for-Schleife anstatt einer while-Schleife verwenden? Nun, das entscheidest du! Viele Programmierer bevorzugen for-Schleifen, weil man damit nicht so schnell versehentlich eine Endlosschleife erstellt (man vergisst nicht so schnell eine Zählervariable zu erhöhen). Aber manchmal macht eine while-Schleife einfach mehr Sinn, und dann verwendet man diese. Versuche beide und entscheide selbst!

Willst du an der Diskussion teilnehmen?

Verstehst du Englisch? Klick hier, um weitere Diskussionen auf der englischen Khan Academy Seite zu sehen.