WHILE-Anweisung in ST

Syntax
WHILE ... DO
...
END_WHILE;

Bedeutung

Mit der WHILE-Anweisung bestimmen Sie, dass eine Gruppe von Anweisungen (nach DO bis zu END_WHILE eingegeben) wiederholt ausgeführt wird, bis der damit verknüpfte Boolesche →Ausdruck (nach WHILE eingegeben) mit Wert FALSE (oder einer Entsprechung) ausgewertet wird. Wird die Bedingung bereits zu Anfang mit Wert FALSE (oder einer Entsprechung) ausgewertet, dann wird die Anweisung oder Gruppe von Anweisungen gar nicht ausgeführt.

Beispiel
FUNCTION_BLOCK ExampleWhileDocumentation
VAR
count, sum, I : INT;
END_VAR
count := 1;
sum := 0;
WHILE LT(count, 11) DO
sum := ADD(sum, count);
count := ADD(count, 1);
END_WHILE; (* Die Variable 'sum' entspricht '55'. *)
END_FUNCTION_BLOCK

Keine Erkennung von Endlosschleifen

Endlosschleifen werden von logi.CAD 3 nicht erkannt und verhindert. Geben Sie deshalb Code in Ihrer Anwendung (z.B. Abbruchbedingungen mit Hilfe von IF-Anweisungen) ein, mit denen Endlosschleifen verhindert werden.