Die »while«-Schleife

Mit einer Zählschleife kann man eine Menge Sachen machen. Sie eignet sich für alle Aufgaben, bei denen ein Vorgang automatisch mehrere Male wiederholt werden muss, egal ob drei Mal, x Mal oder zehntausend Mal.

Es gibt aber noch einen zweiten Typ Schleife, der im Alltag des Programmierers ebenso wichtig ist. Das ist die while-Schleife. Sie ist mit einer Bedingung verknüpft und daher mit der if-Struktur verwandt. Allerdings wiederholt sie ihren Block immer wieder, solange wie die Bedingung gilt.

while ist Englisch und bedeutet etwa »solange wie«.

Der Aufbau ist also so:

[+]  Vergleich: »if« und »while«

Beim if-Befehl wird der eingerückte Block einmalig ausgeführt, wenn die Bedingung wahr ist. Bei der while-Schleife wird der eingerückte Block ausgeführt, wenn die Bedingung wahr ist, und anschließend springt das Programm wieder zum Anfang und prüft die Bedingung erneut. Solange die Bedingung wahr ist, wird der Block immer wieder ausgeführt.

Wir probieren das mal mit einem ganz einfachen Python-Programm aus:

Erst wird x auf 0 gesetzt, damit die Variable x überhaupt existiert. Jetzt kommt die while-Schleife: Es wird geprüft, ob x kleiner als 10 ist. Das trifft am Anfang auf jeden Fall zu, denn x ist ja 0. (Wenn die Bedingung von Anfang an nicht stimmt, wird der eingerückte Block unter der while-Zeile natürlich überhaupt nicht ausgeführt, genau wie bei if).

Nun folgt also der eingerückte input-Befehl, bei dem die Variable x neu eingegeben wird.

Nach der Eingabe springt Python wieder zurück zur Zeile mit while und überprüft die Bedingung erneut. Hat man eine Zahl unter 10 eingegeben, dann ist die Bedingung wahr (x ist kleiner als 10), und die eingerückte Zeile wird wieder ausgeführt, es wird also wieder ein neuer Wert für x eingegeben. Erst wenn man eine Zahl eingibt, die 10 oder höher ist, ist die Bedingung falsch. x ist nicht kleiner als zehn, und die while-Schleife ist damit beendet. Daraufhin geht es mit dem nächsten Befehl nach der while-Schleife weiter – und das Programm teilt mit, dass ein Wert eingegeben wurde, der nicht kleiner als zehn ist.

Probiere das mal selbst aus, dann verstehst du es am besten.

Mit der while-Schleife hast du das letzte ganz wichtige Hauptelement des Programmierens kennengelernt. Nun stehen dir zahlreiche Möglichkeiten offen, um kleine Spielchen und später noch vieles andere mehr zu programmieren.