AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Inhalt   <<   <   >   >>   Index

Syntax:          a)     IF Ausdruck [THENAnweisungen [ELSE Anweisungen]
          b)     IF Ausdruck THEN
                   [Anweisungen]
                [ELSE [Anweisungen]
                   Anweisungen]
                ENDIF

Argumente:     a)     Ausdruck wird wie ein Wahrheitswert behandelt. Wenn es verschieden von Null ist, wird es als TRUE ausgelegt und alle Anweisungen im THEN Teil der Konstruktion werden abgearbeitet. Wenn der Ausdruck Null (FALSE) ergibt, gelangt die ELSE Komponente zur Ausführung.

                Anweisungen ist entweder eine Liste von Null oder mehr Anweisungen, die durch Strichpunkte voneinander getrennt sind, oder eine  Zeilennummer. Im letzteren Fall folgt auf das THEN (welches vorhanden sein muß) ein implizites GOTO oder ELSE.

                Hinweise: Das THEN ist fakultativ vor Anweisungen, mit Ausnahme von Sternchen-Befehlen. Beispiel:

                IF a THEN *Cat  und nicht  IF a *Cat

                Die ELSE Komponente paßt zu jedem IF - vermeiden Sie daher die Verschachtelung von IFs auf derselben Zeile. Konstruktionen der Form

                
IF a THENŒ IF b THENŒ ELSEŒ

                sollten vermieden werden, weil die ELSE Komponente je nach Werten von a und b sowohl zum ersten als auch zum zweiten IF passen kann. Zur Vermeidung von Zweideutigkeiten ist ein mehrzeiliges IF dieser Form vorzuziehen:

                
IF a THEN
                
  IF b THEN
                
    Œ
                
  ENDIF
                
ELSE
                
    Œ
                
ENDIF

                Im Unterschied dazu ist die Form

                
IF a THENŒ ELSE IF b THENŒ

                über jeden Zweifel erhaben und kann daher ohne Probleme verwendet werden.

          b)     Ausdruck wird als Wahrheitswert verwendet. Wenn von Null verschieden, wird er als TRUE ausgelegt, wobei alle Anweisungen angefangen von der Zeile nach THEN bis zum nächsten ELSE oder ENDIF ausgeführt werden. Wenn der Ausdruck Null (FALSE) ergiebt, gelangen alle Anweisungen nach ELSE (wenn vorhanden) bis zu ENDIF zu Ausführung. In dieser Form muß THEN die letzte Anweisung auf der Zeile.

Beispiele:     a)     
IF temp<=10 PROCtief_temp

                
IF a%>b% THEN SWAP a%,b% ELSE PRINT "Kein Tausch"

          b)     
IF b^2>=4*A*C THEN
                
  PROCwurzeln(A,B,C)
                
ENDIF

                
IF r$="J" OR r$="j" THEN
                
  PRINT "Ja"
                
ELSE
                
  PRINT "Nein"
                
  STOP
                
ENDIF

[sh-index] Back to list of manuals