Hitachi

JP1 Version 12 JP1/IT Desktop Management 2 配布機能 運用ガイド


18.4.9 論理演算子

論理演算子は、論理AND演算(&&)、および論理OR演算(||)を実行します。

〈この項の構成〉

(1) 形式

論理AND演算式
式1 && 式2
論理OR演算式
式1 || 式2

(2) 説明

論理演算子は通常の演算変換は実行しません。その代わりに、0と一致するかどうかという観点で各オペランドを評価します。論理演算の結果はtrueまたはfalseです。結果の型はboolです。

論理演算子の説明を次に示します。

演算子

説明

&&

両方のオペランドがtrueの場合、結果はtrueになります。どちらか一方のオペランドがfalseの場合、結果はfalseになります。論理AND演算の初めのオペランドがfalseの場合、2つ目のオペランドは評価されません。

||

両方のオペランドの評価がfalseの場合、結果はfalseになります。どちらか一方のオペランドの評価がtrueの場合、結果はtrueになります。論理OR演算の初めのオペランドがtrueの場合、2つ目のオペランドは評価されません。

論理ANDおよび論理OR式のオペランドは、左から右に評価されます。1つ目のオペランドの値だけで演算結果を判別できるときは、2つ目のオペランドは評価されません。これを「短絡評価」と呼びます。

(a) 論理AND演算子(&&)の場合

両方の式がtrueと評価された場合は、結果はtrueになります。式のどちらかがfalseと評価された場合は、結果はfalseになります。次の表では、評価結果の判別方法を示します。

式1の評価

式2の評価

評価結果

true

true

true

true

false

false

false

true

false

false

false

false

(b) 論理OR演算子(||)の場合

どちらか一方、または両方の式がtrueと評価された場合は、結果はtrueになります。次の表では、評価結果の判別方法を示します。

式1の評価

式2の評価

評価結果

true

true

true

true

false

true

false

true

true

false

false

false

(3) 記述例

DEFINE
{
   float varfloat1 = 1.567e-1;
   integer varint1 = 10;
   integer varfloat2 = 0;
   integer varint2 = 0;
   bool varbool;
   integer WINH;
}
MAIN
{
   varbool = varfloat1 && varint1;
   AIT_LogMessage("The expected value of varbool is: true");
   varbool =varfloat2 && varint1;
   AIT_LogMessage("The expected value of varbool is: false");
   varbool=varfloat1 && varint2;
   AIT_LogMessage("The expected value of varbool is: false");
   varbool=varfloat2 && varint2;
   AIT_LogMessage("The expected value of varbool is: false");
}