IF-THEN-ELSE

Die IF-THEN-ELSE Befehle sind eine Art der Kontrollstrukturen und werden verwendet, um eine oder mehrere Anweisungen, je nach Auswertung der Bedingung, auszuführen.

Hinweise

Wenn <Bedingung> wahr ist, dann wird <Anweisung 1> ausgeführt. Wenn <Bedingung> falsch ist, dann wird <Anweisung 2> ausgeführt.

Die eckigen Klammern um ELSE <Befehl 2> bedeuten, dass dieser Teil des Befehls optional ist. Der ELSE-Befehl wird verwendet, wenn verschiedene Aktionen ausgeführt werden, je nachdem, wie <Bedingung> ausgewertet wird. Ein Semikolon vor einem ELSE-Befehl ist nicht erlaubt.

Es können komplexere Kontrollstrukturen durch das Schachteln von IF-THEN-ELSE-Befehlen aufgebaut werden. Das Lesen mehrerer verschachtelter IF-THEN-ELSE-Befehle kann sehr verwirrend sein, aber generell gehört ein ELSE-Befehl zum letzten IF-Befehl, dem ein ELSE-Befehl fehlt.

Programmierkonventionen

IF und THEN sollten in der gleichen Zeile stehen. ELSE sollte in einer eigenen Zeile stehen.

Beinhaltet die Bedingung viele oder lange Ausdrücke, sollte THEN auf einer neuen Zeile stehen und mit IF ausgerichtet werden.

Werden IF-Ausdrücke mit THEN- und ELSE-Teilen geschrieben, sollte das THEN-Ergebnis wahrscheinlicher sein als das ELSE-Ergebnis.

Wird im letzten Befehl eines THEN-Teils ein EXIT oder ein ERROR verwendet, dann darf darauf kein ELSE-Befehl folgen.

Beispiel 1

Folgender Pseudocode ist ein typischer IF-THEN-ELSE-Befehl.

IF <Bedingung 1> THEN 
  IF <Bedingung 2> THEN 
    <Anweisung 1> 
  ELSE
    <Anweisung 2>

Wenn <Bedingung 1> falsch ist, wird nichts ausgeführt. Wenn <Bedingung 1> und <Bedingung 2> wahr sind, dann wird <Anweisung 1> ausgeführt. Wenn <Bedingung 1> wahr und <Bedingung 2> falsch ist, dann wird <Anweisung 2> ausgeführt.

Beispiel 2

Folgende Beispiele zeigen die Verwendung des IF-THEN-ELSE-Befehls:

IF x = y THEN
  x += 1
ELSE
  x := -x - 1;

Folgendes Beispiel zeigt einen verschachtelten IF-THEN-ELSE-Befehl:

IF Amount < 1000 THEN BEGIN
  IF I > J THEN
    Max := I
  ELSE
    Max := J;
  Amount *= Max;
END;

Folgendes Beispiel zeigt die korrekte Verwendung von ERROR und EXIT innerhalb des IF-THEN-ELSE-Befehls:

IF x <> y THEN
  EXIT(TRUE);
x *= 2;
y -= 1;

Folgendes Beispiel zeigt die inkorrekte Verwendung von ERROR und EXIT innerhalb des IF-THEN-ELSE -Befehls:

IF x < y THEN
  EXIT(TRUE)
ELSE BEGIN
  x *= 2;
  y -= 1;
END;