
出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」
うるう年の判定条件(4で割り切れない年、100で割り切れて400で割り切れない年はうるう年でない、それ以外はうるう年)を表現する決定表を選ぶ問題。
西暦年号がうるう年か否かの判定条件を、条件部と動作部からなる決定表で正しく表したものを選ぶ問題。
① うるう年: 4で割り切れない→でない、4で割れて100で割れない→うるう年、100で割れて400で割れない→でない、400で割れる→うるう年
② 4列の判定が「でない・うるう・でない・うるう」になっている表を探す
③ ③
判定規則を整理する。(ア)4で割り切れない年は、うるう年でない。(イ)4で割り切れ、100で割り切れ、400で割り切れない年は、うるう年でない。(ウ)それ以外は、うるう年である。決定表の4列を見ると、①4で割り切れない(N)→うるう年でない、②4で割り切れ100で割り切れない(Y,N)→うるう年、③4・100で割り切れ400で割り切れない(Y,Y,N)→うるう年でない、④4・100・400すべてで割り切れる(Y,Y,Y)→うるう年。したがって動作部は、「うるう年と判定する」がX(2列目、4列目)、「うるう年でないと判定する」がX(1列目、3列目)となる。これに一致する③が正しい。
うるう年は「4で割り切れる年で、100で割り切れる年を除き、ただし400で割り切れる年はうるう年」というルールである。決定表では、条件の組合せ(列)ごとに動作を確認していく。「—」は条件の真偽に関係しないことを表す。
キーワード: 決定表、うるう年、条件判定、論理、情報・論理