論理演算子

等価演算・不等価演算、比較演算等は2つの値(式)に対する演算のため、例えば

a < b < c

という式は意図しない結果をもたらします。「a < bの計算結果」と「c」の比較が行われてしまうためです。

このような都合から、プログラム中ではこの「a は b より小さく、b は c より小さい」を「a < b かつ b < c」と読み替えて実装する必要があますが、これは次のように書くことができます。

a < b and b < c

このように、複数の条件式が必要な場合は論理演算子andを用いて条件式を記述することができます。

AかつBを実装したい場合は

A and B

AまたはBを実装したい場合は

A or B

と記述します。

C 言語においては、A and BA && B と、A or BA || B と書く必要がありました。C++においても C 言語の記法と同じものが使えますが、これは A & BA | B という別の演算子と誤ることが多く、バグの原因となりやすいためあまり推奨されていません。


Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。