FOR-Anweisung in ST
FOR ... TO ... BY ... DO ... END_FOR;
Bedeutung |
---|
Mit der Der Durchlauf der Der Wert der Steuervariable nach Ausführung der Die Steuervariable, der Anfangswert und der Endwert müssen Ausdrücke des gleichen Integer-Typs Keine Änderungen der Steuervariable, des Anfangswert, des Endwerts und der Schrittweite in den wiederholten Anweisungen Beachten Sie, dass logi.CAD 3 die Anzahl der Durchläufe bestimmt, bevor die Unbestimmbar Anzahl der Durchläufe Ist die Anzahl der Durchläufe unbestimmbar (siehe Beispiel 4, da darin der Endwert nie erreicht werden kann), wird die |
FUNCTION_BLOCK ExampleExecutedFORDocumentation VAR count, sum, I : INT; END_VAR count := 1; sum := 0; FOR I := 1 TO 50 BY 2 DO (* "I" ist die Steuervariable, "1" ist der Anfangswert, "49" ist der Endwert (obwohl "50" eingegeben ist), "2" ist die Schrittweite. *) sum := ADD(sum, count); count := ADD(count, 1); END_FOR; END_FUNCTION_BLOCK
FUNCTION_BLOCK ExampleExecutedFORDocumentation2 VAR I : UINT; END_VAR FOR I := 100 TO 1 BY -1 DO (* "I" ist die Steuervariable, "100" ist der Anfangswert, "1" ist der Endwert, "-1" ist die Schrittweite. *) (* ... *) END_FOR; END_FUNCTION_BLOCK
FUNCTION_BLOCK ExampleNotExecutedFORDocumentation VAR count, sum, I : INT; END_VAR count := 1; sum := 0; FOR I := 1 TO 10 BY -1 DO (* Die FOR-Anweisung wird nicht ausgeführt werden, da es nicht möglich ist den Anfangswert "1" um den Wert "-1" zu erhöhen (= um "1" zu verringern), bis der Endwert "10" erreicht wird. *) sum := ADD(sum, count); count := ADD(count, 1); END_FOR; END_FUNCTION_BLOCK
FUNCTION_BLOCK ExampleNotExecutedFORDocumentation2 VAR count, sum, I : INT; byVar : INT; END_VAR count := 1; sum := 0; byVar := 0; FOR I := 1 TO 10 BY byVar DO (* Die FOR-Anweisung wird nicht ausgeführt werden, da die Anzahl der Durchläufe unbestimmbar ist. *) (* ... *) END_FOR; END_FUNCTION_BLOCK