図1のように二つの入力に対し,一つの出力を行うボックスがある。このボックスへの入力は“賛成”か“反対”のいずれかであり,入力が二つとも“賛成”のときだけ“賛成”と出力し,その他のときは“反対”と出力する。図2のように,三つの入力を二つのボックスに入力したときの出力に関する記述のうち,正しいものはどれか。
平成26年度 春期 ITパスポート試験 問57
这道题的解析和你的作答记录。
問 57
错误ア
“只要有一个以上的输入是赞成就总是输出赞成”是逻辑或(OR)的动作,与把 AND 串联起来的图2 正好相反。例如输入1 = 赞成、输入2 = 反对、输入3 = 反对 时,虽然有一个赞成,但第1个盒子的输出是反对,第2个盒子也含有反对的输入,所以最终输出是反对。
错误イ
“有两个以上的输入是赞成”包含恰好有两个赞成的情况,而那种情况下输出总是反对,所以不能说“总是输出赞成”。恰好有两个赞成时,必然有一个输入是反对,而这个反对的输入一定会进入其中某一个盒子,因此最终输出必定是反对。例如输入1 = 赞成、输入2 = 反对、输入3 = 赞成 时,第1个盒子的输出是反对,最终输出也是反对。只有三个输入全部是赞成时才会输出赞成。
错误ウ
即使只有一个反对,最终输出也会是反对,所以“只有当两个以上的输入是反对时才输出反对”是错误的。例如输入1 = 赞成、输入2 = 赞成、输入3 = 反对 时,反对只有一个,但第2个盒子接收到反对的输入,因此最终输出是反对。正确的说法是“只要有一个以上的反对就输出反对”。
- エ
正解 盒子的动作是「两个输入都是赞成时才输出赞成,其他情况输出反对」,也就是与逻辑与(AND)相同的作用。在图2中,首先输入1和输入2进入第1个盒子,其输出与输入3一起进入第2个盒子,形成最终输出。因此最终输出 =(输入1 AND 输入2)AND 输入3,只有三个输入全部是赞成时才输出赞成,只要有一个是反对就输出反对。エ 的“只有当三个输入全部是‘赞成’时,才输出‘赞成’”与此一致,所以是正确的。实际验证一下:三个都是赞成 → 第1个盒子输出赞成 → 第2个盒子的两个输入都是赞成,因此输出赞成。只有输入3是反对 → 即使第1个盒子输出赞成,第2个盒子含有反对的输入,所以输出反对。输入1或输入2是反对 → 第1个盒子输出反对 → 第2个盒子也输出反对。
- “只有两个输入都是赞成时才输出赞成”的盒子与逻辑与(AND)相同;即使符号或说法发生变化,把它换成真值表(输入组合与输出的对应关系)来思考是常规解法。
- 把 AND 串联(级联)连接起来后,整体也成为所有输入的 AND。三输入 AND 就是“只有全部赞成时才赞成 = 只要有一个反对就反对”。