Abbruchbedingung - LinkFang.de





Abbruchbedingung


In der Informatik ist eine Abbruchbedingung 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.

Beispiel

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.

Literatur

  • Wolfgang Schneider:Strukturiertes Programmieren in BASIC. Friedrich Vieweg & Sohn Verlagsgesellschaft, Wiesbaden 1985, S. 256 ff.
  • Cornelia Heinisch, Joachim Goll, Frank Müller:Java als erste Programmiersprache. 4. Auflage, B.G. Teubner Verlag, Wiesbaden 2005, ISBN 3-519-32642-6, S. 286 ff.

Siehe auch

Weblinks


Kategorien: Programmierung

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Abbruchbedingung (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.