ELSE (TSB)

Aus C64-Wiki
Wechseln zu: Navigation, Suche
ELSE (TSB)
Format: ELSE
Parameter
keine
Einordnung
Typ: Anweisung
Kontext: Strukturkontrolle
Aufgabe: Leitet den Nicht-Wahr-Zweig einer Bedingungsklausel ein
Abkürzung: eL
Verwandte Befehle
DO - DONE - DO NULL - RCOMP - IF - THEN


Dieser Artikel beschreibt das Schlüsselwort ELSE (TSB).
Das entsprechende Simons'-Basic-Schlüsselwort lautet ebenfalls ELSE.

Typ: Anweisung
Syntax: ELSE

ELSE ergänzt den BASIC-V2-Befehl IF (der nur einen Wahr-Zweig in seiner Bedingungsklausel kennt; siehe THEN) um einen weiteren Zweig, den Nicht-Wahr-Zweig. Das bedeutet, dass in der gleichen BASIC-Zeile, in der IF..THEN steht, in TSB auch folgen kann, was passieren soll, wenn die Bedingung nach IF nicht zutrifft. (In BASIC V2 wird dieser Fall nicht ausdrücklich behandelt und muss ggf. extra abgefragt werden.)

Der Nicht-Wahr-Zweig (mit ELSE) muss vom Wahr-Zweig mit einem Doppelpunkt abgetrennt werden.

In TSB hat der Programmierer darüberhinaus mit den Befehlen DO und DONE die Möglichkeit, die beiden Bedingungszweige über beliebig viele BASIC-Zeilen zu verlängern. ELSE trennt auch hier die Wahr- und Nicht-Wahr-Zweige voneinander (Syntax siehe Beispiel 2).

Beispiel 1: 

10 PRINT "test ";
20 FETCH "jn",1,x$
30 IF x$ = "j" THEN PRINT "ja": ELSE PRINT "nein"
 
(je nachdem, ob der Benutzer "j" oder "n" drückt, erscheint eine andere Antwortausgabe)
Beispiel 2: 

10 PRINT "test ";
20 FETCH "jn",1,x$
30 IF x$ = "j" THEN DO
40 :  PRINT "ja"
50 ELSE
60 :  PRINT "nein"
70 DONE
 
(das Gleiche Ergebnis wie in Beispiel 1, aber verteilt auf mehrere Zeilen)