基礎理論
基本情報技術者試験 科目A免除 修了試験 20170122 実施分 問3
関数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 = C
- エ (A = B 又は B = C) 又は A = C
出典:基本情報技術者試験 科目A免除 修了試験 20170122 実施分 問3
答えと解説を見る
正解:ア
覚える知識
等価判定関数eqの入れ子の必要十分条件
eq(X,Y)=eq(P,Q)が1になるのは、PとQが同じ真偽値のときである。
この問題で必要なこと
eq(A,B)とeq(B,C)が同じ値になれば外側が1を返す。両方1(A=BかつB=C)か、両方0(A≠BかつB≠C)の場合である。
ひっかけ
「A≠B又はB≠C」のように、両方0の条件を片方0に緩めた選択肢が混同を誘う。
この知識の出題:本試験系 0 回・免除試験 3 回(公開問題での観測値)