Menu
Coddy logo textTech

論理演算子 パート1

CoddyのC++ジャーニー「基礎」セクションの一部 — レッスン 23/74。

論理演算子は、true または false を返す比較の組み合わせをチェックするために使用されます。

例えば、次の文には2つの比較が含まれています: 

5は3より大きく、かつ6より小さいですか?

演算子意味
&&かつ (And) - すべてのオペランドが true の場合に truea && b
||または (Or) - いずれかのオペランドが true の場合に truea || b
!否定 (Not) - オペランドが false の場合に true!a

 

いくつかの例を見てみましょう:

5は3より大きく、かつ1は1に等しい:

bool b1 = (5 > 3) && (1 == 1); // trueを保持します

解説: すべてのオペランドが true であるため、b1true を保持します (and 演算は、両方のオペランドが true の場合に true となります)。

 

5は4と等しくない、または5は2と等しい:

bool b2 = !(5 == 4) || (5 == 2); // 真となります

解説: 最初のオペランド (5 != 4) は true なので、b2true です(or 演算は、いずれかのオペランドが true であれば true となります)

 

1は1と等しくない、またはfalse:

bool b3 = !(1 == 1) || false; // falseを保持します

解説: すべてのオペランドが false なので、b3false を保持します(or 演算)。

 

3は4より大きくありません:

bool b4 = !(3 > 4); // 真となります

説明: オペランドは false なので、b4true を保持します(not 演算)。

 

5は10より大きくない、または5は1より大きくない:

bool b5 = !(5 > 10 || 5 > 1); // falseを保持します

解説: 5 > 10 || 5 > 1true (オペランドの1つが true であるため) なので、全体として b5false (not 演算) です。

challenge icon

チャレンジ

初心者

コードが与えられています。変数 bool b1bool b2 のクエスチョンマークを置き換えて、bool b3true を保持するようにしてください。

少し時間を取って条件を分析し、どのような値がそれを true にするか考えてみましょう。

正解はたくさんあります!

チートシート

論理演算子は、true または false を返す比較の組み合わせをチェックするために使用されます。

演算子 意味
&& かつ (And) - すべてのオペランドが true の場合に true a && b
|| または (Or) - いずれかのオペランドが true の場合に true a || b
! 否定 (Not) - オペランドが false の場合に true !a

例:

bool b1 = (5 > 3) && (1 == 1); // true - 両方のオペランドが true
bool b2 = !(5 == 4) || (5 == 2); // true - 最初のオペランドが true
bool b3 = !(1 == 1) || false; // false - 両方のオペランドが false
bool b4 = !(3 > 4); // true - false を否定して true にする
bool b5 = !(5 > 10 || 5 > 1); // false - true を否定して false にする

自分で試してみよう

#include <iostream>

int main() {
    // 以下にコードを入力してください
    bool b1 = ?;
    bool b2 = ?;
    bool b3 = b1 || b2;
    
    // 以下の行は変更しないでください
    std::cout << "b3 = " << b3;
    return 0;
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン