Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

whilewhileWhileWhilewhile (Operator)

Name

whilewhileWhileWhilewhile — Eröffnet einen Schleifenblock, der solange ausgeführt wird, wie die Bedingung wahr ist.

Signatur

while( : : Condition : )

Herror while(const Hlong Condition)

Herror T_while(const Htuple Condition)

void While(const HTuple& Condition)

static void HOperatorSet.While(HTuple condition)

def while(condition: int) -> None

Beschreibung

whilewhileWhileWhileWhilewhile führt den Schleifenblock bis zur zugehörigen Anweisung endwhileendwhileEndwhileEndwhileEndwhileendwhile aus, solange der Parameter ConditionConditionConditionConditionconditioncondition 'true'"true""true""true""true""true" (oder eine Zahl ungleich 0) ergibt.

Ergibt die Bedingung 'false'"false""false""false""false""false" (0), wird die Programmausführung nach der zugehörigen endwhileendwhileEndwhileEndwhileEndwhileendwhile-Anweisung fortgesetzt.

Parameter

ConditionConditionConditionConditionconditioncondition (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Bedingung für die Schleife.

Beispiel (HDevelop)

dev_update_window ('off')
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowID)
read_image (Image, 'particle')
dev_display (Image)
stop ()
threshold (Image, Large, 110, 255)
dilation_circle (Large, LargeDilation, 7.5)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (3)
dev_set_color ('green')
dev_display (LargeDilation)
dev_set_draw ('fill')
stop ()
complement (LargeDilation, NotLarge)
reduce_domain (Image, NotLarge, ParticlesRed)
mean_image (ParticlesRed, Mean, 31, 31)
dyn_threshold (ParticlesRed, Mean, SmallRaw, 3, 'light')
opening_circle (SmallRaw, Small, 2.5)
connection (Small, SmallConnection)
dev_display (Image)
dev_set_colored (12)
dev_display (SmallConnection)
stop ()
dev_set_color ('green')
dev_display (Image)
dev_display (SmallConnection)
Button := 1
while (Button == 1)
  dev_set_color ('green')
  get_mbutton (WindowID, Row, Column, Button)
  dev_display (Image)
  dev_display (SmallConnection)
  dev_set_color ('red')
  select_region_point (SmallConnection, SmallSingle, Row, Column)
  dev_display (SmallSingle)
  NumSingle := |SmallSingle|
  if (NumSingle == 1)
    intensity (SmallSingle, Image, MeanGray, DeviationGray)
    area_center (SmallSingle, Area, Row, Column)
    dev_set_color ('yellow')
    set_tposition (WindowID, Row, Column)
    write_string (WindowID, 'Area='+Area+', Int='+MeanGray)
  endif
endwhile
dev_set_line_width (1)
dev_update_window ('on')

Ergebnis

Sind die Parameterwerte korrekt, dann liefert whilewhileWhileWhileWhilewhile (als Operator) den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt und ein Fehlercode zurückgeliefert.

Alternativen

forforForForForfor, untiluntilUntilUntilUntiluntil

Siehe auch

repeatrepeatRepeatRepeatRepeatrepeat, breakbreakBreakBreakBreakbreak, continuecontinueContinueContinueContinuecontinue, ififIfIfIfif, elseifelseifElseifElseifElseifelseif, elseelseElseElseElseelse

Modul

Foundation