Loading AI tools
Ein Begriff aus der Informatik Aus Wikipedia, der freien Enzyklopädie
Eine Abbruchbedingung ist in der Informatik eine Bedingung, die erfüllt sein muss, damit ein Vorgang beendet wird. Jede Schleife oder rekursive Funktion benötigt deswegen eine Abbruchbedingung, wenn sie nicht endlos laufen soll.
Die Existenz einer Abbruchbedingung garantiert aber nicht den Abbruch: sie ist notwendig, aber nicht hinreichend. Fehler in der Spezifikation der Schleife oder der rekursiven Funktion, sowie Eingaben, die nicht der Spezifikation entsprechen, können die Abbruchbedingung unerfüllbar machen. In diesem Fall entsteht eine Endlosschleife. Es benötigt aber keine unerfüllbaren Abbruchbedingungen, um Schleifen endlos laufen zu lassen.
In der folgenden Funktion (Syntax von C++ bzw. Java) stellt die markierte Zeile die Abbruchbedingung dar; ist diese erfüllt, wird der rekursive Abstieg beendet:
int zweiHoch(int i)
{
if (i == 0)
return 1; // zwei hoch 0 ist 1
else
return 2*zweiHoch(i-1); // zwei hoch i ist zwei mal (zwei hoch i-1)
}
Ruft man die Funktion mit Werten größer oder gleich 0 auf, erhält man die entsprechende Zweierpotenz. Obwohl die Abbruchbedingung erfüllbar ist, schreitet die Rekursion jedoch endlos fort, falls man einen negativen Parameter übergibt.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.