問題
問1
X及びYはそれぞれ0又は1の値をとる変数である。X□YをXとYの論理演算としたとき、次の真理値表が得られた。X□Yの真理値表はどれか。


[出典:基本情報技術者試験 令和6年度(科目A) 問1]
スポンサーリンク
正解
正解は「ウ」です。
解説
この問題では、XとYという2つの真理値(0または1)に対して、ある論理演算を行った結果が表形式で与えられており、どの演算かを見抜く必要があります。問題に記載された表では、X□Yの結果に対してさらに「X AND (X□Y)」および「X OR (X□Y)」が与えられています。この2つの結果と各選択肢を突き合わせることで、X□Yの内容を推定できます。
まず、与えられた表の「X AND (X□Y)」の結果を見てみると、X=1かつX□Y=1のときだけ1になります。同様に「X OR (X□Y)」の結果では、XもしくはX□Yのどちらかが1なら1になります。これらの出力と照合していくと、選択肢ウの真理値表がぴったり一致することが分かります。
選択肢ウのX□Yの値は、(0,1), (1,0), (1,1)のときに1となっており、これは論理演算「X OR Y」に一致します。つまり、X□Y = X OR Y と判断できるため、正解はウとなります。
なお、論理演算が慣れていない方は、OR演算を「どちらかが1なら1」と覚えると良いでしょう。例えば、「部屋にAさんかBさんのどちらかがいるならドアが開く」ようなイメージです。Aさん(X)かBさん(Y)のどちらかでも在室ならドアが開く(1)、そうでなければ閉まる(0)という具合です。
- ア(X□Yが 0,0,1):
XとYがともに1のときだけ1になる真理値表で、これは論理積(AND)に該当します。しかし、問題で与えられた「X AND (X□Y)」と「X OR (X□Y)」の結果と一致しないため誤りです。 - イ(X□Yが 1,1,1):
全ての入力に対して出力が1になっていますが、これは論理演算のどれとも一致せず、特定の条件に対応していません。与えられた演算結果とも一致しないため誤りです。 - エ(X□Yが 1,0,0):
Xが0のときのみ1になるような表になっており、X NOR Yに近い動作をしますが、これも「X AND (X□Y)」と「X OR (X□Y)」の結果と合致しません。
難易度
この問題は「真理値表を見て論理演算の内容を推定する」タイプであり、論理演算(AND、OR、XORなど)に慣れていないと混乱しやすいです。初学者にとっては真理値のパターンを照合するという発想が必要になるため、やや難しく感じられるかもしれません。難易度としては「やや難しい」に分類されます。
スポンサーリンク
用語補足
真理値表:
論理演算のすべての入力と出力の組合せを一覧にした表です。入力が0か1かに対して、演算結果がどうなるかを明示します。
AND(論理積):
XとYの両方が1のときにのみ結果が1になる演算です。例:電気のスイッチが2つあって、両方オンにならないと電気がつかないイメージです。
OR(論理和):
XまたはYのどちらかが1であれば結果が1になる演算です。例:どちらかがスイッチを入れれば電気がつくような構造です。
対策
論理演算の基本であるAND、OR、XORなどの動きをしっかり覚え、真理値表を書けるようにしておくことが重要です。手書きで各入力パターンを1行ずつ確認しながら照合する練習をすると理解が深まります。また、結果をANDやORに代入した際にどう変化するかの検証も練習しましょう。