Logo

www.hundert-prozent.net - Tutorials---CPP-Schleifen

Du surft über eine ungesicherte HTTP-Verbindung auf www.hundert-prozent.net. Klicke hier um eine sichere HTTPS-Verbindung aufzubauen. Diese ist von Let's Encrypt verifiziert.

Was ist eine Schleife?

Eine Schleife(englisch: loop) ist eine wiederholende Befehlsfolge.

Die loop kann z. B. 10 hintereinander "Hello World" ausgeben und man muss den Befehl zur Ausgabe nur einmal eingeben.

In diesem Artikel geht es um die while-loop(englisch: solange-schleige | während-schleife), for-loop(englisch: für-schleife).

Die for Schleife

for(int n = 0; n < 10; n++)
{
    // body
    cout << "Hello World" << endl;
}

Mit int n = 0; legen wir ein Integer mit dem Namen n an und dem Inhalt 0.

n ist der Zähler. Der Zähler zählt, wie oft die Schleife durchlaufen wurde.

Im letzten Durchlauf ist n 9. Es wurde trotzdem 10 mal ausgegeben, weil die Null mitzählt.

Dies ist die Initialisierung. Als nächstes kommt die Bedingung.

Die Bedingung n < 10 legt fest, wie oft eine Schleife durchläuft.

In dem Fall läuft die Schleife, solange n kleiner ist als 10. Also bis n == 9 ist.

Wichtig: Die for-loop läuft trotzdem 10 Runden lang, weil die 0. Runde mitzählt.

Und n++ bedeutet, dass n jede Runde um eins erhöht wird( man könnte auch ++n hinschreiben).

In die geschweiften Klammern({ und }) schreibt man den body(englisch: Körper)(also den Inhalt der Schleife) der Schleife rein.

Bei uns ist das die Ausgabe von "Hello World".

Wenn man einen Teil der Schleifeninitialisierung weglassen möchte (, z. B. weil sie bereits im Code inbegriffen ist, ) dann kann man den Teil weglassen( z. B. for(; n < 10;) oder auch for(;;)).

Die while Schlife

while kommt aus dem Englischen und bedeutet während und-oder solange. Ein Beispiel für diese Schleife ist:

while(n++ < 10)
{
    cout << "Hello World" << endl;
}

Dieses Beispiel gibt auch 10 mal "Hello World" aus.

Diese Schleife läuft so lange, bis die Bedingung nicht mehr erfüllt(false) ist.

In diesem Fall ist die Bedingung n++ < 10. Diese Bedigung ist erfüllt, solange n != 10.

Im Deutschen würde dort stehen solange(n++ kleiner ist als 10).

Daraus folgt: Bei while(true) wird die Schleife nicht beendet; sie läuft immer weiter.