Wikipedia · einfach zusammengefasst · Stand
Abbruchbedingung
Eine Abbruchbedingung ist in der Informatik eine Bedingung, die erfüllt sein muss, damit ein Vorgang beendet wird. Jede Schleife oder rekursive Funktion …
Inhalt2 Abschnitte
Bedeutung der Abbruchbedingung
Eine Abbruchbedingung ist in der Informatik eine Bedingung, die erfüllt sein muss, damit ein Vorgang endet. Sie ist besonders wichtig bei Schleifen und rekursiven Funktionen: Ohne Abbruchbedingung können sie endlos weiterlaufen.
Eine vorhandene Abbruchbedingung garantiert den Abbruch nicht. Sie ist notwendig, aber nicht hinreichend. Fehler in der Spezifikation einer Schleife oder rekursiven Funktion sowie Eingaben, die nicht zur Spezifikation passen, können dazu führen, dass die Bedingung nie erfüllt wird. Dann entsteht eine Endlosschleife. Schleifen können jedoch auch aus anderen Gründen endlos laufen, nicht nur wegen einer unerfüllbaren Abbruchbedingung.
Rekursive Berechnung einer Zweierpotenz
Die Funktion zweiHoch(int i) berechnet Zweierpotenzen rekursiv. Rekursion bedeutet, dass eine Funktion sich selbst erneut aufruft.
Für i == 0 gilt die Abbruchbedingung: Die Funktion gibt 1 zurück, denn zwei hoch 0 ist 1. Andernfalls berechnet sie 2 * zweiHoch(i - 1). Für Werte größer oder gleich 0 wird so die passende Zweierpotenz berechnet.
Bei einem negativen Parameter wird i bei jedem Aufruf noch kleiner. Die Bedingung i == 0 kann dann nicht erreicht werden, sodass die Rekursion endlos fortschreitet.