hack のためのネタ帳, etc,,,

論理演算

論理演算は AND, OR, NOT 演算子 &, |, !、及び条件付 AND, OR 演算子 &&, ||、及び XOR 関数 xor(x,y) が利用できる。
論理積(AND)論理和(OR)否定(NOT)排他的論理和(XOR)
&|!xor(x,y)
条件付&&||

通常の AND, OR と条件付 AND, OR の違いが良く分からないのだが、実行結果から察するに、通常の AND, OR は、第1項の真偽値に関わらず第2項は常に計算されるが、条件付 AND, OR は第1項の真偽値にって第2項が計算されない場合が生ずるという違いのようだ。
具体例は以下の通り。
> 通常の AND
> F &  print(1) # 第1項が偽であるため演算結果が偽になることは確定しているが、第2項も実行される。
[1] 1
[1] FALSE
> # 条件付 AND
> F && print(1) # 第1項が偽であるため演算結果が偽になることが確定しているので、第2項は実行されない。
[1] FALSE
> # 通常の OR
> T |  print(1) # 第1項が真であるため演算結果が真になることは確定しているが、第2項も実行される。
[1] 1
[1] TRUE
> # 条件付 OR
> T || print(1) # 第1項が真であるため演算結果が真になることが確定しているので、第2項は実行されない。
[1] TRUE

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

編集にはIDが必要です