Zum Inhalt springen
YellowBlue
IT-Grundlagen4 Min. Lesezeit

Kontrollstrukturen: Verzweigungen und Schleifen

Kurzantwort

Kontrollstrukturen steuern, in welcher Reihenfolge die Anweisungen eines Programms ausgeführt werden. Es gibt drei Grundtypen: die Sequenz (nacheinander), die Verzweigung (Entscheidung mit if/else) und die Schleife (Wiederholung mit while oder for). Aus diesen drei Bausteinen lässt sich jeder Algorithmus zusammensetzen.

Teil des Lernpfads Programmieren und Softwareentwicklung · Schritt 3 von 18

Ein Programm, das nur stur eine Zeile nach der anderen abarbeitet, kann wenig. Erst wenn es entscheiden und wiederholen kann, wird es nützlich. Genau das leisten Kontrollstrukturen – und es gibt erstaunlich wenige davon.

Was sind Kontrollstrukturen?

Kontrollstrukturen bestimmen den Ablauf eines Programms: welche Anweisung wann und wie oft ausgeführt wird.

Die Sequenz

Die einfachste Struktur: Anweisungen werden von oben nach unten ausgeführt, eine nach der anderen.

lies Preis
lies Menge
berechne Summe = Preis * Menge
gib Summe aus

Die Verzweigung

Eine Verzweigung führt Code nur unter einer Bedingung aus. Die Bedingung ist wahr oder falsch – abhängig davon geht es unterschiedlich weiter.

WENN alter >= 18 DANN
    gib "volljährig" aus
SONST
    gib "minderjährig" aus

Gibt es mehr als zwei Fälle, nutzt man sonst wenn oder eine Fallunterscheidung (in vielen Sprachen switch).

Die Schleife

Eine Schleife wiederholt Anweisungen. Zwei Typen sind zu unterscheiden:

TypWannMerkmal
Zählschleife (for)Anzahl der Durchläufe steht fest„mache das 10-mal"
Bedingungsschleife (while)Anzahl hängt von einer Bedingung ab„solange noch Eingaben da sind"
SOLANGE guthaben > 0 TUE
    ziehe monatsbeitrag ab

Die Endlosschleife: der häufigste Anfängerfehler

Selbstkontrolle

Selbstkontrolle

Eine Schleife soll auf jeden Fall mindestens einmal durchlaufen werden. Welchen Typ wählst du?

Häufige Fragen

Wann nehme ich for, wann while?

Nimm die Zählschleife for, wenn die Anzahl der Durchläufe von vornherein feststeht, etwa „für jeden der 30 Datensätze". Nimm die while-Schleife, wenn die Anzahl von einer Bedingung abhängt, die sich erst während der Ausführung entscheidet, etwa „solange noch Zeilen in der Datei stehen". Technisch lässt sich jede for-Schleife auch als while schreiben, aber die passende Wahl macht den Code lesbarer.

Was ist eine geschachtelte Schleife?

Eine Schleife innerhalb einer anderen Schleife. Für jeden Durchlauf der äußeren läuft die innere komplett durch. Typisches Beispiel ist die Verarbeitung einer Tabelle: Die äußere Schleife geht über die Zeilen, die innere über die Spalten. Die Gesamtzahl der Durchläufe ist das Produkt beider – das kann schnell groß werden.

Was bedeutet break und continue?

Mit break verlässt man eine Schleife vorzeitig, sobald ein Ziel erreicht ist, etwa wenn der gesuchte Eintrag gefunden wurde. Mit continue überspringt man nur den Rest des aktuellen Durchlaufs und macht mit dem nächsten weiter. Beide sind nützlich, sollten aber sparsam eingesetzt werden, weil zu viele Sprünge den Ablauf schwer nachvollziehbar machen.

Warum reichen drei Grundstrukturen wirklich aus?

Das besagt das Strukturtheorem: Jeder berechenbare Algorithmus lässt sich allein mit Sequenz, Verzweigung und Schleife ausdrücken, ohne Sprungbefehle. Das ist die Grundlage der strukturierten Programmierung und der Grund, warum Struktogramme mit genau diesen Bausteinen auskommen. Mehr Konstrukte sind Komfort, keine Notwendigkeit.

Weiterlesen: Variablen und Datentypen einfach erklärt · Datenstrukturen: Array, Liste, Stack und Queue · Rekursion: wenn sich eine Funktion selbst aufruft · Sortier- und Suchalgorithmen verstehen

Das Wichtigste in Kürze

  • Drei Grundstrukturen genügen: Sequenz, Verzweigung, Schleife.
  • Verzweigung = Entscheidung anhand einer wahr/falsch-Bedingung.
  • Zählschleife (for): feste Anzahl; Bedingungsschleife (while): von Bedingung abhängig.
  • Kopfgesteuert kann null-mal laufen, fußgesteuert mindestens einmal.
  • Jede Schleife braucht eine erreichbare Abbruchbedingung, sonst wird sie endlos.

Verwandte Beiträge

IT-Grundlagen3 Min. Lesezeit

Rekursion: wenn sich eine Funktion selbst aufruft

Wie Rekursion funktioniert, warum jede rekursive Funktion eine Abbruchbedingung braucht und wann Rekursion sinnvoller ist als eine Schleife.

IT-Grundlagen4 Min. Lesezeit

Sortier- und Suchalgorithmen verstehen

Wie Bubblesort und die binäre Suche funktionieren, warum die lineare Suche langsamer ist und was die O-Notation über die Laufzeit verrät.

IT-Grundlagen4 Min. Lesezeit

Datenstrukturen: Array, Liste, Stack und Queue

Wie Programme Daten organisieren: Array, verkettete Liste, Stack und Queue verständlich erklärt – mit ihren Stärken, Schwächen und typischen Einsätzen.