論理演算子とは?論理演算子の優先順位をコードで比較

  • このエントリーをはてなブックマークに追加

スポンサーリンク

※サイト運営にサーバーは必須です※
ロリポップ! はコスパのよい初心者向けサーバーです~

目次

論理演算子とは?

論理演算子とは、真偽(論理)値を扱う演算子です。

論理演算子の判定結果は、true(真)かfalse(偽)を返します。

論理演算子には以下のような種類があります。

演算子 項数 意味
! 1 否定(NOT)
& 2 かつ(AND)
&& 2 かつ(AND)
| 2 または(OR)
|| 2 または(OR)
^ 2 排他的論理和(XOR)

NOT(否定演算子「!」)

Aがtrueなら!Aはfalseを返します。

A !A
true false
false true

AND(「&」「&&」)

難しい言葉で言えば、2つの式の論理積(AND)を求めます。

両方の式がtrueであれば、trueを返します。

そうでない場合は、falseを返します。

A B A&B
true true true
true false false
false true false
false false false

※上のパターンで言えば、AとBの両方がtrueでないと、「A&B」はtrueにならない。

OR(「|」「||」)

難しい言葉で言えば、2つの式の論理和(OR)を求めます。

両方の式のどちらかがtrueであれば、trueを返します。

両方ともfalseの場合に、falseを返します。

A B A|B
true true true
true false true
false true true
false false false

※上のパターンで言えば、AとBのどちらかがtrueであれば、「A|B」はtrueになります。

XOR(「^」)

難しい言葉で言えば、2つの式の排他的論理和(XOR)を求めます。

2つの式が同じであれば、falseを返し、2つの式が異なれば、trueを返します。

A B A^B
true true false
true false true
false true true
false false false

演算子の優先順位

演算子の優先順位は

「!」(NOT)>「&」(AND)>「^」(XOR)>「|」(OR)

左側の演算子が優先されます。

最低限、ANDはORより優先されると覚えておきましょう。

※単項演算子と2項演算子を比較すると、単項演算子が優先されています。また、二項演算子同士を比べた際、trueを返すパターンが少ない演算子の方が、先に演算されると覚えておきましょう。ANDは1パターン、XORは2パターン、ORは3パターン、trueを返すパターンがあります。

以下が演算子の優先順位を比較する用のソースコード。

言語はC#

実行結果

!f & f
False
False
True
False
f & f | t
True
True
False
t | f & f
True
True
False
FalseFalseFalse
TrueTrueTrue
TrueTrueTrue
FalseFalseFalse
TrueTrueTrue
TrueFalseTrue
TrueTrueTrue
t | t ^ t
True
True
False
True
FalseFalseFalse
TrueTrueFalse
FalseFalseFalse
TrueTrueFalse
FalseFalseFalse
TrueTrueTrue
TrueTrueTrue
FalseFalseFalse
f & t ^ t
True
True
False
True

関連記事

~ギャンブルに絶対儲かる必勝法があるのだろうか?~

私(サイト主)はこの疑問に対して非常に興味を持ち、プログラミングで検証してみました。

このサイトを応援してもいいかなと思う人はぜひとも購入を検討してみてください。

ギャンブルの必勝法が本当に儲かるかプログラミングで検証してみた

     

コメントを残す

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)