DO

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

Herhaalt een aantal instructielijnen zolang de beginvoorwaarde "waar" blijft, of tot de eindconditie "waar" wordt.

Deel Beschrijving
DO Altijd het eerste deel van de instructie-lus
WHILE Als ze voorkomt moet de Condition waar blijven om de lus verder uit te blijven voeren.
UNTIL Als ze voorkomt moet die Condition waar worden om de uitvoering van de lus te onderbreken.
Condition Eender welke booleanse uitdrukking.
BREAK Spring onmiddellijk uit de lus en ga voort met de uitvoering van de eerste programmalijn na de lus.
CONTINUE Onmiddellijk alle volgende instrukties overslaan tot de laatste lijn van de lus om zo een nieuwe doorloop van de lus aan te vatten.
LOOP Altijd de laatste instructie van de lus.

Als de startvoorwaarde Condition bij het begin "onwaar" is, wordt de lus helemaal niet uitgevoerd. Anders wordt de lus minstens één keer uitgevoerd, zelfs als de eindvoorwaarde Condition "waar" is van bij het begin.

Examples

' Een eenvoudige lus

= 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

' Hetzelfde met  UNTIL

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

Wees voorzichtig de UNTIL lus niet te beginnen met een waarde voor "a" die groter is dan 5. De variabele "a" zal verhoogd worden tot de waarde die hoger is dan 6 en je bereikt nooit meer de eindvoorwaarde. Het is waarschijnlijk beter om in de plaats daarvan "LOOP a > 5" te gebruiken om de kans te beperken in een oneindige uitvoering van de lus terecht te komen.

Examples

' Deze lus zal nooit de eindvoorwaarde bereiken
= 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

Zie ook