STステートメント:IF
The IF
ステートメントは、条件をチェックするため、およびこの条件に応じて、後続のステートメントを実行するために使用されます。
条件は次のようにコード化されます 表現 ブール値を返します。式が返される場合 TRUE
、次に条件が満たされ、対応するステートメントが実行されます。 THEN
。式が返される場合 FALSE
、次に、次の条件で識別されます。 ELSIF
、が評価されます。もし ELSIF
条件が返されます TRUE
、次にステートメントは対応する後に実行されます THEN
。すべての条件が戻った場合 FALSE
、その後、ステートメントは後に実行されます ELSE
。
したがって、最大で1つのブランチ IF
ステートメントが実行されます。 ELSIF
ブランチと ELSE
ブランチはオプションです。
構文
IF <condition> THEN <statements> ( ELSIF <condition> THEN <statements> )* ( ELSE <statements> )? END_IF; // ( ... )* None, once or several times // ( ... )? Optional
例 70. 例
PROGRAM PLC_PRG VAR iTemp: INT; xHeatingOn: BOOL; xOpenWindow: BOOL; END_VAR IF iTemp < 17 THEN xHeatingOn := TRUE; ELSIF iTemp > 25 THEN xOpenWindow := TRUE; ELSE xHeatingOn := FALSE; END_IF;
プログラムは実行時に次のように実行されます。
式の評価用 iTemp < 17 = TRUE
、後続のステートメントが実行され、加熱がオンになります。式の評価用 iTemp < 17 = FALSE
、後続 ELSIF
調子 iTemp > 25
評価されます。これが当てはまる場合、 ELSIF
が実行され、ビューが開きます。すべての条件が FALSE
、その後、ステートメントはで実行されます ELSE
暖房がオフになります。