DO

DO [ WHILE Bedingung ] . . . [ BREAK | CONTINUE ] . . . LOOP [ UNTIL Bedingung ]

Wiederholt eine Reihe von Codezeilen, solange die ursprüngliche Bedingung wahr bleibt oder bis die abschließende Bedingung wahr wird.

Teil Beschreibung
DO Immer die erste Anweisung der Schleife.
WHILE Wenn es eingesetzt wird, gibt es eine Bedingung an, die wahr bleiben muss, um die Schleife auszuführen.
UNTIL Wenn es eingesetzt wird, gibt es eine Bedingung an, die wahr werden muss, um die Ausführung der Schleife zu beenden.
Bedingung Beliebiger Ausdruck mit booleschem Rückgabewert.
BREAK Verlässt die Schleife unmittelbar und führt das Programm mit der nächsten Zeile nach der Schleife fort.
CONTINUE Lässt unmittelbar alle folgenden Befehle innerhalb der Schleife aus und springt ans Ende der Schleife, wodurch sie wieder von vorn beginnt.
LOOP Immer die letzte Anweisung der Schleife.

Wenn die ursprüngliche Bedingung bei Beginn schon falsch ist, wird die Schleife überhaupt nicht ausgeführt. Andererseits wird die Schleife mindestens einmal ausgeführt, selbst wenn die abschließende Bedingung bei Beginn wahr ist.

Examples

' eine ganz einfache Schleife

= 1

DO WHILE a \<= 5
  PRINT "Hello World"; a
  INC a
LOOP
Hello World 1
Hello World 2
Hello World 3
Hello World 4
Hello World 5

' das gleiche mit UNTIL

DO
  PRINT "Hello World"; a
  INC a
LOOP UNTIL a = 6

Achten Sie darauf, dass beim Eintritt in die Schleife "a" nicht größer als 5 ist. Dann würde "a" auf einen größeren Wert als 6 erhöht, und die einzige Möglichkeit, die Schleife zu beenden, ginge verloren. Besser würde man hier "LOOP UNTIL a > 5" benutzen, um die Gefahr einer Endlosschleife zu vermeiden.

Examples

' Diese Schleife erreicht nie ihren Endwert
= 1

DO WHILE a \<= 5
  PRINT "Hello World"; a
  INC a
  IF a = 4 THEN BREAK
LOOP
Hello World 1
Hello World 2
Hello World 3

Siehe auch