Crashkurs – Schleifen
Jetzt wo du mit Entscheidungen gearbeitet hast, geht es an die Wiederholungen (Schleifen).
Was sind Wiederholungen?
Wiederholungen sind ähnlich aufgebaut wie Entscheidungen, arbeiten allerdings etwas anders.
Im Prinzip funktioniert eine Wiederholung so:
SOLANGE eine Bedingung WAHR IST, DANN WIEDERHOLE die bestimmten Befehle.

So eine Wiederholung nennt man auch Schleife. Das Ganze sieht in JavaScript so aus:
while (geschwindigkeit < 39000) {
beschleunigen();
}
Was macht dieser Code?
Solange die Geschwindigkeit kleiner als 39000 ist, wird der Befehl beschleunigen() ausgeführt.
Achtung Endlosschleife
Jetzt muss man sich nur noch innerhalb der Schleife darum kümmern, dass die Bedingung irgendwann auch stoppt. Ansonsten landet man in einer Endlosschleife. Endlosschleifen sind böse Fehler, die dein Programm zum Absturz bringen können, da es nur noch mit der Schleife beschäftigt ist. Dein Browser reagiert dann nicht mehr und du musst den Tab schließen oder den Browser neu starten.
Rakete beschleunigen bis Geschwindigkeit 39000 km/h erreicht wurde
Wir wollen den obigen Schleifen-Code erweitern, damit die Schleife stoppt, sobald die Bedingung (geschwindigkeit < 39000) erfüllt ist. Gehen wir davon aus, dass die aktuelle Geschwindigkeit bei 38500 liegt. Wir definieren daher, außerhalb der Schleife (in Zeile 1), die Variable geschwindigkeit = 38500;.
geschwindigkeit = 38500
Jetzt wollen wir solange Beschleunigen, bis wir die Endgeschwindigkeit erreicht haben. Gehen wir davon aus, dass, jedes Mal, wenn die Schleife durchlaufen wird, die Geschwindigkeit um +100 km/h erhöht wird.
Du könntest dafür Folgendes in die Schleife schreiben:
geschwindigkeit = geschwindigkeit + 100
Programmierer sind jedoch faul und haben eine kürzere Schreibweise entwickelt, um die gleiche Rechenoperation zu erreichen. Wir addieren hier +100 zum bereits bestehenden Wert von geschwindigkeit:
geschwindigkeit+= 100
Jetzt bist du gefragt - Code-Aufgabe:
Lass uns eine Übung mit der Schleife durchführen. Im untenstehenden Editor ist die while-Schleife schon eingetippt.
Deine Aufgabe:
- Füge in Zeile 7 einen ausgeben()-Befehl ein, der die aktuelle Geschwindigkeit als Text anzeigt. Dann wissen wir, dass die Beschleunigung korrekt funktioniert.
- Ändere den Wert der Rechenoperation in Zeile 5 auf 50. Führe das Programm dann erneut aus. Was ist anders?
[lp_spoiler title="Lösung anzeigen" style="simple"]
Der komplette Code zur Beschleunigung der Rakete bis auf 39.000 km/h sieht wie folgt aus:
geschwindigkeit = 38500
while (geschwindigkeit < 39000) {
geschwindigkeit+= 100
ausgeben("Beschleunigt! Aktuelle Geschwindigkeit: " + geschwindigkeit)
}
ausgeben("Endgeschwindigkeit erreicht!")
[/lp_spoiler]
Hast du das Raumschiff auf die richtige Geschwindigkeit gebracht? Sehr gut. In der nächsten Übung kannst du dein Können unter Beweis stellen.