戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

基本情報技術者 2024年 科目A01


問題文

X及びYはそれぞれ0又は1の値をとる変数である。X□YをXとYの論理演算としたとき、次の真理値表が得られた。X□Yの真理値表はどれか。
基本情報技術者 2024年 科目A 問01の問題画像基本情報技術者 2024年 科目A 問01の選択肢の画像

選択肢

(正解)

🔒 解説は解答すると表示されます

真理値表から演算同定【午前解説】

正解の理由

与えられた表は各入力 (X,Y) に対して「X AND (X□Y)」および「X OR (X□Y)」の値が示されています。これらの条件を満たす X□Y を行ごとに求めると、(0,0)=1、(0,1)=1、(1,0)=0、(1,1)=1 となります。この真理値列は選択肢のうち の表と一致します。論理式としては すなわち含意 と同値です。

解法ステップ

  1. 各行について X の値に注目する。X=0 のときは
    • は常に成立する()。
    • なので、表に示された値から直接 を求められる。
  2. 行 (X=0,Y=0):OR 列が 1 なので
  3. 行 (X=0,Y=1):同様に OR 列が 1 →
  4. 行 (X=1,Y=0):AND 列が 0 なので 。OR 列は で矛盾なし。
  5. 行 (X=1,Y=1):AND 列が 1 →
  6. 得られた真理値列 (00→1,01→1,10→0,11→1) を選択肢と照合すると に一致する。

選択肢別の誤答解説

  • ア: 真理値列は (00)=0,(01)=0,(10)=0,(11)=1 で、これは (論理積)と同値である。与えられた条件の (0,0) 行では OR 列が 1 を示すため、ア の (0,0)=0 は条件と矛盾する。
  • イ: 真理値列は (00)=0,(01)=1,(10)=0,(11)=1 で、これは と同値である。与えられた (0,0) 行で だが OR 列が 1 を示すため不適合。
  • ウ: 真理値列は (00)=1,(01)=1,(10)=0,(11)=1 で、与えられた各行の AND/OR の条件を満たす。論理式は (含意 )で説明できる。
  • エ: 真理値列は (00)=1,(01)=1,(10)=1,(11)=0 で、これは (NAND)に相当する。与えられた (1,1) 行で AND 列が 1 を示しているため、エ は (1,1)=0 と矛盾する。

よくある誤解

  • 「X=0 行では AND 列の値だけ見ればよい」と考えると誤る。X=0 のとき AND 列は常に 0 なので、実際に役立つのは OR 列(=自身)である点を見落としやすい。
  • 選択肢を既知の演算(AND/OR/XOR 等)に当てはめるだけで決めようとする。正しくは与えられた複合式(X AND (X□Y), X OR (X□Y))から論理的に逆算することが必要。

補足コラム

導出した式を整理すると は含意(if X then Y)を表す標準的な論理演算です。代数的に簡単化する手順は次の通り: この問題は「複合式の値から未知演算の値を逆算する」典型問題で、X の値による分岐(X=0 と X=1)で考えると素早く解けます。

FAQ

Q1: X=0 の行ではなぜ AND 列は情報にならないのですか?
A1: は a に依らず常に 0 だからです。したがって X=0 の行では AND 列から を決定できず、代わりに OR 列 を使います。
Q2: 得られた真理値表から直接演算名はどう決める?
A2: 真理値表を既知演算(AND, OR, XOR, NAND, 含意 など)と照合するか、ブール式に変換して簡約化すると演算名が分かります。本問では が導かれ、含意 と判定できます。
Q3: 矛盾が出たらどうする?
A3: 与えられた複合列同士に矛盾があれば問題の表が不正確か、選択肢に正しい演算がない可能性があります。まず各行ごとに論理的に導出し、矛盾箇所を特定してください。

関連キーワード: 真理値表、論理演算、含意、同値変形、逆算方法
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

基本情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について