Bedingungsschleifen mit while
- Wie lässt sich „Bedingungsschleifen mit while“ mit einem Modell erklären?
- Welchen Datentyp besitzt jeder Wert und welchen Programmweg nimmt der Testfall?
- Wie kann ich meine Lösung testen und verständlich dokumentieren?
Iterationen mit While-Schleifen
Nichts kann der Computer so gut, wie immer und immer wieder dasselbe zu tun – wie zum Beispiel in einem Iterationsverfahren. Viele Berechnungen beruhen auf Iterationen, so zum Beispiel die Berechnung von \(a^n\) oder \(n!\) (\(n\) Fakultät) oder aber auch von Binomialkoeffizienten oder von Reihenentwicklungen für \(\pi\) oder \(e^ x\).
In einem entsprechenden Computerprogramm realisierst du eine Iteration durch eine While-Schleife. Innerhalb der While-Schleife wird eine Berechnung solange wiederholt, wie die Schleifenbedingung erfüllt ist. Aber wie entwirfst du eine While-Schleife?
Iterationsschema
Um das Ganze systematisch anzugehen, stellst du als Erstes ein Iterationsschema auf. Wenn du zum Beispiel \(a^n\) berechnen willst, sieht das Iterationsschema folgendermaßen aus:

Du brauchst zwei Variablen, deren Werte sich verändern: \(i\) und \(p\). Für diese legst du jeweils eine Zeile in dem Iterationsschema an. Mit der Variablen \(i\) zählst du die Iterationen und mit der Variablen \(p\) merkst du dir das jeweilige Zwischenergebnis \(a^i\). Die Werte der Variablen \(a\) und \(n\) verändern sich dagegen nicht.
Iterationsgleichungen aufstellen
Nun schaust du, wie jeweils der Wert \(v\) einer Variablen aus dem vorher berechneten Wert \(v'\) hervorgeht:
$$i = i' + 1$$$$p = p' \cdot a$$Der Wert einer Variablen "mit Strich" bezeichnet dabei immer den Wert der Variablen in der vorherigen Spalte.
Du berechnest also den Wert von \(i\) in jeder Spalte, indem du den Wert von \(i\) aus der vorherigen Spalte nimmst und 1 hinzu addierst. Und den Wert von \(p\) in jeder Spalte berechnest du, indem du den Wert von \(p\) aus der vorherigen Spalte mit \(a\) multiplizierst.
In der ersten Spalte, die keine vorherige Spalte hat, werden die Werte der Variablen durch Initialisierung festgelegt.
$$i = 0$$$$p = 1$$Iterationsgleichungen in ein While-Programm umsetzen
Ohne viel nachzudenken, setzt du die Iterationsgleichungen gleichsam mechanisch in ein While-Programm um. Du beginnst mit den Initialisierungen. Dann schreibst du die While-Schleife. Der Schleifenkörper besteht aus den Iterationsgleichungen.
Als Schleifenbedingung wählst du eine Bedingung, die im Iterationsschema für alle Spalten vor der Spalte gilt, in der du das Ergebnis der Berechnung erwartest.
Fertig! Vorausgesetzt ist, dass du alle Variablen deklariert hast und dass du die Variablen \(a\) und \(n\) mit Werten versehen hast.
Vorteile des Iterationsschemas
Lohnt sich der ganze Aufwand? Ja, definitiv! Auch bei dem hier gezeigten einfachsten Beispiel kannst du dich anhand des Iterationsschemas davon überzeugen, ob dein Programm korrekt ist, insbesondere
- ob die Initialisierungen stimmen,
- ob die Schleifenbedingung richtig ist,
- ob im Schleifenkörper die richtigen Anweisungen in der richtigen Reihenfolge stehen.
Und erst recht lohnt es sich, mithilfe eines Iterationsschemas systematisch vorzugehen, wenn die Berechnung komplizierter ist. Schau dir einmal die Aufgaben an.
Sicherlich kriegst du es auch hin, die Lösungen sozusagen freihändig zu programmieren, aber mit einem Iterationsschema hast du jederzeit eine Referenz, mit der du die Korrektheit deines Programms nachvollziehen kannst.
Erklärung von Serlo Education e. V., lizenziert unter CC BY-SA 4.0 – Original bei Serlo, CC BY-SA 4.0, übernommen am 2026-09-03.
Schlau Fassung
Bedingungsschleifen mit while while wiederholt einen Block, solange eine Bedingung wahr ist. Initialisierung, Veränderung und Abbruch verhindern Endlosschleifen.
Bedingungsschleifen mit while ist in der Informatik kein isolierter Merksatz. Entscheidend ist, welche Daten oder Zustände am Anfang vorliegen, nach welcher Regel sie verarbeitet werden und wie sich das Ergebnis überprüfen lässt. Eine Eingabe wird wiederholt, solange sie außerhalb 1 bis 10 liegt; jeder Durchlauf liest einen neuen Wert.
Beim Bearbeiten trennst du deshalb Beobachtung und Vermutung: Zuerst beschreibst du, was tatsächlich eingegeben, gespeichert, übertragen oder ausgegeben wird. Danach begründest du mit Fachbegriffen, warum der Ablauf so funktioniert.
Drei Bausteine, die du sicher können musst
Er bestimmt Wertebereich und erlaubte Operationen.
Sie markiert zusammengehörige Programmblöcke.
Sie beschreibt einen Fehler während der Ausführung.

Ausgearbeitetes Beispiel
Ausgangslage: Eine Eingabe wird wiederholt, solange sie außerhalb 1 bis 10 liegt; jeder Durchlauf liest einen neuen Wert.
- Modell festlegen: Benenne Eingaben, gespeicherte Werte und die gewünschte Ausgabe.
- Regel anwenden: Formuliere die Verarbeitung so genau, dass eine andere Person jeden Schritt wiederholen kann.
- Ergebnis prüfen: Vergleiche die beobachtete Wirkung mit einer vorher notierten Erwartung und untersuche mindestens einen Randfall.
Begründung: while wiederholt einen Block, solange eine Bedingung wahr ist. Initialisierung, Veränderung und Abbruch verhindern Endlosschleifen. Dadurch wird nicht nur das Ergebnis, sondern auch sein Zustandekommen nachvollziehbar.
So gehst du informatisch vor
Fachbegriffe in eigenen Worten
- Datentyp
- Er bestimmt Wertebereich und erlaubte Operationen.
- Einrückung
- Sie markiert zusammengehörige Programmblöcke.
- Ausnahme
- Sie beschreibt einen Fehler während der Ausführung.
Aufgaben
- StartBegriffe sichern: Erkläre „Bedingungsschleifen mit while“ in mindestens vier Sätzen und verwende zwei Begriffe aus dem Glossar.
Musterlösung
while wiederholt einen Block, solange eine Bedingung wahr ist. Initialisierung, Veränderung und Abbruch verhindern Endlosschleifen. Eine Eingabe wird wiederholt, solange sie außerhalb 1 bis 10 liegt; jeder Durchlauf liest einen neuen Wert. Eine vollständige Antwort benennt zusätzlich Eingabe oder Ausgangszustand, Verarbeitung und überprüfbares Ergebnis. - OrdnenModell bilden: Zerlege das Beispiel der Seite in Ausgangslage, Regel, Ergebnis und Test.
Musterlösung
Ausgangslage: die im Beispiel genannten Daten oder Geräte. Regel: der beschriebene Verarbeitungsschritt. Ergebnis: die sichtbare Wirkung. Test: ein normaler Fall und ein bewusst veränderter Randfall. - AnwendenSelbst lösen: Schreibe Pseudocode für eine geprüfte Zahleneingabe und übertrage ihn anschließend in Python.
Musterlösung
Die Eingabe wird als Text gelesen, gezielt in eine Zahl umgewandelt, bei ungültigem Format erklärt und erst danach verarbeitet. - FehlersucheDiagnose: Verändere im Beispiel genau eine Voraussetzung. Sage vorher, welche Wirkung du erwartest, und begründe sie.
Lösungshinweis
Eine gute Lösung benennt die veränderte Voraussetzung, den betroffenen Verarbeitungsschritt und eine beobachtbare Ausgabe. Mehrere Dinge gleichzeitig zu ändern erlaubt keine eindeutige Ursache. - TransferNeuer Zusammenhang: Finde ein zweites Beispiel aus Schule oder Alltag und erkläre Gemeinsamkeit sowie Unterschied.
Lösungshinweis
Nutze dieselben Fachbegriffe, aber übertrage sie auf andere Daten, Geräte oder Regeln. Der Unterschied muss fachlich relevant sein und darf nicht nur den Namen betreffen. - ProfiVertiefung: Entwickle Tests für leere Eingabe, Grenzwert, falschen Datentyp und einen normalen Wert.
Lösungshinweis
Notiere zu jedem Test Eingabe, erwartete Ausgabe und den tatsächlich beobachteten Programmweg.
Weiterführende Aufgaben
Abgabe in fünf Teilen
- Ziel: Ein Satz, der messbar sagt, was funktionieren soll.
- Plan: Skizze, Ablaufplan, Tabelle oder Pseudocode.
- Produkt: Programm, Modell, Untersuchung oder dokumentierter Versuch.
- Tests: Normalfall, Randfall und mindestens ein absichtlich provozierter Fehler.
- Reflexion: Gefundener Fehler, vorgenommene Verbesserung und nächster sinnvoller Schritt.
Bewertungsraster für Partnerfeedback
- Fachlich richtig und mit passenden Begriffen erklärt
- Plan und Ergebnis stimmen sichtbar überein
- Tests sind reproduzierbar dokumentiert
- Quellen, Bilder und fremde Hilfen sind angegeben