CodeGym /Kurse /C# SELF /Schleifensteuerung: Die Anweisungen break und continue

Schleifensteuerung: Die Anweisungen break und continue

C# SELF
Level 4 , Lektion 4
Verfügbar

1. Einführung

Oft gibt's Situationen, in denen du nicht alle Durchläufe einer Schleife bis zum Ende brauchst, sondern vorzeitig raus willst – zum Beispiel, sobald du das gesuchte Element gefunden hast. In anderen Fällen willst du einen Teil der Arbeit überspringen und direkt zum nächsten Schritt gehen (zum Beispiel, du hast Daten gelesen und willst deren Verarbeitung überspringen). Das ist die Steuerung des Flusses innerhalb einer Schleife.

Die Anweisungen break und continue in C# sind genau dafür da. Lass uns anschauen, wie sie funktionieren und wofür sie in echten Aufgaben nützlich sind.

2. Die Anweisung break: "Stopp, Maschine!"

Theorie und Syntax

Die Anweisung break wird benutzt, um sofort aus einer Schleife rauszuspringen, egal wo du dich im Schleifenkörper befindest. Sobald die Programmausführung auf break trifft, wird die Schleife sofort beendet und es geht mit der ersten Codezeile nach der Schleife weiter.


while (bedingung)
{
    if (irgendeine-bedingung)
    {
        break;
    }
    // restlicher Schleifencode
}
Verwendung von break in einer while-Schleife

Das Gleiche funktioniert auch für for und do-while:

for (int i = 0; i < 10; i++)
{
    if (irgendeine-bedingung)
    {
        break;
    }
    // restlicher Schleifencode
}

Beispiel 1: Prüfen, ob eine Zahl eine Primzahl ist

Eine Zahl ist eine Primzahl, wenn sie nur durch 1 und sich selbst teilbar ist. Wir müssen eine Zahl auf Primzahl prüfen: alle möglichen Teiler von 2 bis n-1 durchgehen. Wenn sich herausstellt, dass unsere Zahl durch einen Teiler teilbar ist, muss man nicht weiter prüfen – die Zahl ist keine Primzahl! Die Schleife kann beendet werden.

Beispiel:

int zahl = 111;
bool gefunden = false;
for (int i = 2; i < zahl; i++)
{
    if (zahl % i == 0)
    {
        gefunden = true;
        Console.WriteLine("Teiler gefunden " + i );
        break; // Schleife stoppen, nichts mehr suchen!                
    }    
}

if (!gefunden)
{
    Console.WriteLine("Kein Teiler gefunden - Zahl ist prim.");
}

Beispiel 2: Validierung der Benutzereingabe

Lass uns eine kleine Anwendung schreiben, zum Beispiel einen interaktiven Fragebogen zur Datenerfassung:

while (true)
{
    Console.Write("Gib dein Alter ein: ");
    string eingabe = Console.ReadLine();
    int alter;
    if (int.TryParse(eingabe, out alter) && alter > 0)
    {
        Console.WriteLine($"Super! Dein Alter: {alter}");
        break;   // Daten korrekt eingegeben – Zeit, die Schleife zu beenden!
    }
    else
    {
        Console.WriteLine("Fehler! Bitte gib ein korrektes, positives Alter ein.");
    }
}

Wofür das gut ist:
Manchmal muss man eine Schleife endlos (oder sehr lange) laufen lassen, bis der Benutzer korrekte Daten eingibt. Sobald das gewünschte Ereignis eintritt – break verwenden und endgültig aus der Schleife rausgehen.

3. Die Anweisung continue: "Der Nächste, bitte!"

Theorie und Syntax

Im Gegensatz zu break beendet die Anweisung continue nicht die ganze Schleife, sondern bricht nur die aktuelle Iteration ab: alles, was nach continue im Schleifenkörper steht, wird NICHT ausgeführt – es geht direkt zur nächsten Iteration.


for (int i = 0; i < 10; i++)
{
    if (bedingung)
    {
        continue;
    }
    // dieser Teil wird nur ausgeführt, wenn continue nicht ausgelöst wurde
}
Verwendung von continue in einer for-Schleife

Beispiel 3: Gerade Zahlen überspringen

Stell dir vor, du willst nur ungerade Zahlen aus einem Bereich ausgeben. Gerade sollen übersprungen werden.


for (int i = 1; i <= 10; i++)
{
    if (i % 2 == 0)
    {
        continue; // wenn die Zahl gerade ist – alles darunter überspringen!
    }
    Console.WriteLine("Ungerade Zahl: " + i);
}
Gerade Zahlen mit continue überspringen

Was passiert:
Wenn i = 2, 4, 6... trifft die Schleife auf continue und springt sofort zur nächsten Iteration, ohne Console.WriteLine auszuführen.

Visualisierung Schritt für Schritt:

i i % 2 == 0 Aktion
1 false print, kein continue
2 true continue, kein print
3 false print, kein continue
4 true continue, kein print
... ... ...

Die Anweisungen break und continue werden super oft verwendet. Eigentlich in jeder zweiten Schleife. Du wirst Spaß daran haben, mit ihnen zu arbeiten.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION