【情報I】論理演算AND・OR・NOTとは?基礎から真理値表まで完全解説

テックジム東京本校では、情報科目の受験対策指導もご用意しております。

論理演算とは

論理演算は、情報Iの重要な学習項目の一つで、コンピュータの基礎となる計算方法です。真(True)と偽(False)という2つの値を使って計算を行い、プログラミングや回路設計など、様々な場面で活用されています。

高校の情報Iでは、AND(論理積)、OR(論理和)、NOT(否定)という3つの基本的な論理演算を学習します。これらの演算を理解することで、条件分岐やデータ処理の仕組みを深く理解できるようになります。

AND演算(論理積)とは

AND演算は、2つの条件が両方とも真のときだけ結果が真になる演算です。記号では「∧」や「・」で表されることがあります。

AND演算の真理値表

A B A AND B

AND演算の具体例

例えば、「雨が降っている」かつ「傘を持っている」という2つの条件を考えます。両方が真の場合のみ、「濡れずに外出できる」という結果が真になります。どちらか一方でも偽なら、結果は偽になります。

プログラミングでは、if文の条件として「年齢が18歳以上 AND 保護者の同意がある」のように使われます。両方の条件を満たす場合のみ、処理が実行されます。

OR演算(論理和)とは

OR演算は、2つの条件の少なくとも1つが真のとき結果が真になる演算です。記号では「∨」や「+」で表されることがあります。

OR演算の真理値表

A B A OR B

OR演算の具体例

「電車で行く」または「バスで行く」という2つの選択肢を考えます。どちらか一方でも選択すれば(真なら)、「目的地に行ける」という結果が真になります。両方とも偽の場合のみ、結果は偽になります。

プログラミングでは、「エラーが発生した OR タイムアウトした」のように、複数の異常条件のいずれかが発生した場合に警告を表示するといった使い方をします。

NOT演算(否定)とは

NOT演算は、1つの条件の真偽を反転させる演算です。真を偽に、偽を真に変換します。記号では「¬」や「!」で表されることがあります。

NOT演算の真理値表

A NOT A

NOT演算の具体例

「雨が降っている」が真なら、NOT演算によって「雨が降っていない」は偽になります。逆に「雨が降っている」が偽なら、「雨が降っていない」は真になります。

プログラミングでは、「NOT ログイン済み」という条件で、ログインしていないユーザーにログイン画面を表示するといった使い方をします。

論理演算の組み合わせ

実際のプログラミングでは、これらの論理演算を組み合わせて使用することが多くあります。

複合条件の例

「(年齢が18歳以上 AND 保護者の同意がある)OR 年齢が20歳以上」という条件を考えてみましょう。これは、20歳以上なら無条件で許可、18歳以上20歳未満なら保護者の同意が必要という条件を表現しています。

また、「NOT(エラーが発生した OR タイムアウトした)」という条件は、エラーもタイムアウトも発生していない正常な状態を表現できます。

ド・モルガンの法則

論理演算には重要な法則があり、その中でも「ド・モルガンの法則」は特に重要です。

NOT (A AND B) = (NOT A) OR (NOT B) NOT (A OR B) = (NOT A) AND (NOT B)

この法則を使うことで、複雑な論理式を簡単に変形できます。情報Iの試験でもよく出題される内容なので、しっかり理解しておきましょう。

プログラミングにおける論理演算

多くのプログラミング言語では、論理演算子が用意されています。

Pythonの場合:

  • AND演算: and
  • OR演算: or
  • NOT演算: not

JavaScriptの場合:

  • AND演算: &&
  • OR演算: ||
  • NOT演算: !

これらの演算子を使って、条件分岐やループ処理の条件を記述します。例えば、「if (age >= 18 and hasPermission)」のように書くことで、年齢が18歳以上かつ許可があるときだけ処理を実行できます。

ビット演算との違い

論理演算と似た概念にビット演算がありますが、これらは異なるものです。論理演算は真偽値(True/False)を扱うのに対し、ビット演算は2進数のビット(0と1)に対して演算を行います。

プログラミング言語によっては、論理演算子とビット演算子が区別されているので注意が必要です。

まとめ

論理演算は情報Iの基礎として非常に重要な概念です。AND・OR・NOTの3つの基本演算を理解することで、プログラミングやデータ処理の仕組みを深く理解できます。

真理値表をしっかり覚え、実際にプログラミングで使ってみることで、理解が深まります。論理演算は単なる暗記科目ではなく、実践的なスキルとして身につけることが大切です。

情報Iの試験対策としても、論理演算の問題は頻出なので、この記事で紹介した内容をしっかり復習しておきましょう。特に真理値表の作成や、複合条件の評価は練習問題で慣れておくことをおすすめします。

    らくらくPython塾 – 読むだけでマスター

    共通テスト「情報I」対策解説講座

    実践で学ぶPython速習講座

    テックジム東京本校

    格安のプログラミングスクールといえば「テックジム」。
    講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
    対面型でより早くスキル獲得、月額2万円のプログラミングスクールです。
    情報科目の受験対策指導もご用意しております。