必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. 基本情報技術者
  3. 平成20年度秋季問題一覧
  4. 平成20年度秋季問題9-解答・解説-分析

平成20年度秋季問題

問題9

関数 eq(X,Y) は、引数 X と Y の値が等しければ 1 を返し、異なれば 0 を返す。整数 A、B、C について、eq(eq(A,B),eq(B,C)) を呼び出したとき、1 が返ってくるための必要十分条件はどれか。

(A = B かつ B = C) 又は (A ≠ B かつ B ≠ C)
(A = B かつ B = C) 又は (A ≠ B 又は B ≠ C)
(A = B かつ B = C) 又は (A ≠ B かつ B ≠ C)
(A = B 又は B = C) 又は A = C

関数 eq(X,Y) は、引数 X と Y の値が等しければ 1 を返し、異なれば 0 を返す。整数 A、B、C について、eq(eq(A,B),eq(B,C)) を呼び出したとき、1 が返ってくるための必要十分条件はどれか。

(A = B かつ B = C) 又は (A ≠ B かつ B ≠ C)
(A = B かつ B = C) 又は (A ≠ B 又は B ≠ C)
(A = B かつ B = C) 又は (A ≠ B かつ B ≠ C)
(A = B 又は B = C) 又は A = C

解答:ア

<解説>

eq(eq(A,B),eq(B,C))が1を返すのは、①eq(A,B)とeq(B,C)がどちらも1を返す場合または②eq(A,B)とeq(B,C)がどちらも0を返す場合です。
①になるための条件はA=BかつB=C,②こなるための条件はA≠BかつB≠Cなので,全体の必要条件は「①または②である。

正解はアである。