Rouven: Der Unterschied zwischen WHILE und UNTIL

Beitrag lesen

Hello,

du musst an dieser Stelle direkt zwei Dinge beachten:

  1. Die Art der Bedingung:
    WHILE prüft die Bedingung und läuft IMMER WEITER, solange die Bedingung WAHR ist. Du hast also eine Art "Positivbedingung" mit der du sagst "laufe weiter so lange wie gilt". LOOP-UNTIL hat hingegen eine Negativ- oder Abbruchbedingung, die sagt "mache es so lange, bis dieser Bedingung gilt". Die Logik ist also genau umgekehrt, wird die Bedingung WAHR, BRICHT UNTIL UP.

  2. Der Zeitpunkt der Prüfung
    Bei WHILE handelt es sich um einen pre-checked-loop, dessen Bedingung VOR der Ausführung überprüft wird. Die Abarbeitungsfolge ist also:
    a) überprüfe, ob die Schleife laufen soll
    b) führe die Schleife aus
    c) weiter mit (a)
    Bei LOOP-UNTIL handelt es sich um einen post-checked-loop, dessen Bedingung erst NACH der Ausführung überprüft wird:
    a) führe die Schleife aus
    b) überprüfe, ob die Schleife laufen soll - falls ja, weiter mit (a)

Somit gilt auch, dass eine LOOP-UNTIL-Schleife immer mindestens einmal durchlaufen wird, weil die Bedingung frühestens nach dem ersten Schleifendurchlauf anschlägt. WHILE hingegen kann bereits vor dem ersten Schleifendurchlauf einen Ausstieg verursachen.

MfG
Rouven

--
-------------------
sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)
Eine Bilanz ist wie der Bikini einer Frau. Sie zeigt fast alles, aber verdeckt das Wesentliche  --  Günter Stotz, Regierungsdirektor des baden-württembergischen Wirtschaftsministeriums