If : Else : EndIf
BeschreibungIf <Ausdruck> ... [ElseIf <Ausdruck>] ... [Else] ... EndIf
Die If Struktur wird zu Testzwecken benutzt und/oder um die Richtung der weiteren Programmausführung zu ändern - abhängig davon, ob der Test 'wahr' oder 'falsch' ergibt. Das optionale ElseIf kann für eine beliebige Anzahl zusätzlicher Tests verwendet werden, wenn der vorherige Test nicht 'wahr' ergab. Das optionale Else wird verwendet, um einen Teil des Programm-Codes auszuführen, wenn alle vorherigen Tests 'falsch' ergaben. Eine beliebige Zahl von 'If' Strukturen kann ineinander verschachtelt werden.
"Kurzschluss"-Auswertungen (englisch "short-circuit evaluations") für Ausdrücke werden unterstützt - was bedeutet, dass 'wenn' ein Test 'wahr' ist, alle danach folgenden Tests ignoriert und nicht einmal ablaufen werden.
Beispiel: Basis-Test
a = 5 If a = 10 Debug "a = 10" Else Debug "a <> 10" EndIf
Beispiel: Mehrfach-Test
b = 15 If a = 10 And b >= 10 Or c = 20 If b = 15 Debug "b = 15" Else Debug "Andere Möglichkeit" EndIf Else Debug "Test-Fehler" EndIf
Beispiel: Kurzschluss-Test
Procedure DisplayHello() Debug "Hallo" ProcedureReturn 1 EndProcedure a = 10 If a = 10 Or DisplayHello() = 1 ; a ist gleich mit 10, somit wird der zweite Test vollständig ignoriert Debug "Test-Erfolg" Else Debug "Test-Fehler" EndIf