UNTIL (BASIC 3.5)
UNTIL (BASIC 3.5) | |
Syntax: | DO|LOOP UNTIL <Bedingung> |
Parameter | |
<Bedingung>: numerischer BASIC-Ausdruck | |
Einordnung | |
Typ: | Schlüsselwort |
Kontext: | Programmstruktur |
Aufgabe: | Kennzeichnung einer Abbruchbedingung |
Abkürzung: | uN |
Token: | $fc (252) |
Verwandte Befehle | |
DO, EXIT, LOOP, WHILE |
Anmerkung: Dieser Artikel beschreibt das BASIC-Schlüsselwort UNTIL ab Commodore BASIC V3.5 oder höher.
Das Schlüsselwort UNTIL (engl. für bis) kennzeichnet bei einer DO-LOOP-Konstruktion, dass die nachfolgende Bedingung zum Abbruch der Schleife führt, wenn sie logisch wahr (ungleich 0) ist.
Handelt es sich bei der Bedingung um einen Ausdruck, der eine leere Zeichenkette "" ergibt (aber nicht direkt von einer Zeichenkettenvariablen stammt), dann kommt es beim dritten solchen Vorkommnis zum Abbruch mit der Fehlermeldung ?FORMULA TOO COMPLEX ERROR. Die nichtleere Zeichenkette hingegen entspricht dem logischen "wahr" und führt zum Verlassen der Schleife.
Eine fehlende Bedingung wird mit dem Fehler ?SYNTAX ERROR quittiert.
Beispiele[Bearbeiten | Quelltext bearbeiten]
10 DO 20 A=RND(0) 30 PRINT A 40 LOOP UNTIL A>0.7
Gibt solange Zufallszahlen aus, bis diese größer als 0,7 ist.
BASIC V2.0 Nachbildung[Bearbeiten | Quelltext bearbeiten]
Bei LOOP:
100 DO 110 REM SCHLEIFENKÖRPER 120 LOOP UNTIL BE
kann unter BASIC V2.0 wie folgt nachgebildet werden:
100 : 110 REM SCHLEIFENKÖRPER 120 IF (BE)=0 GOTO 100
Bei DO:
100 DO UNTIL BE 110 REM SCHLEIFENKÖRPER 120 LOOP 130 :
kann unter BASIC V2.0 wie folgt nachgebildet werden:
100 IF BE GOTO 130 110 REM SCHLEIFENKÖRPER 120 GOTO 100 130 :
... allerdings mit der Einschränkung, dass sich der Schleifenbeginn stets nur an einem Zeilenanfang befinden kann.
AUTO | BACKUP | BOX | CHAR | CIRCLE | COLLECT | COLOR | COPY | DEC | DELETE | DIRECTORY | DLOAD | DO | DRAW | DS | DS$ | DSAVE | EL | ELSE | ER | ERR$ | EXIT | GETKEY | GRAPHIC | GSHAPE | HEADER | HELP | HEX$ | INSTR | JOY | KEY | LOCATE | LOOP | MONITOR | PAINT | PRINT USING | PUDEF | RCLR | RDOT | RENAME | RENUMBER | RESUME | RGR | RLUM | SCALE | SCNCLR | SCRATCH | SOUND | SSHAPE | TRAP | TROFF | TRON | UNTIL | VOL | WHILE