HOME»サンプル問題»[科目B]問2

サンプル問題 [科目B]問2

問2

 次のプログラム中のacに入れる正しい答えの組合せを,解答群の中から選べ。

 関数 fizzBuzz は,引数で与えられた値が,3で割り切れて5で割り切れない場合は"3で割り切れる"を,5で割り切れて3で割り切れない場合は"5で割り切れる"を,3と5で割り切れる場合は"3と5で割り切れる"を返す。それ以外の場合は"3でも5でも割り切れない"を返す。

〔プログラム〕
b02_1.gif/image-size:294×268

分類

アルゴリズムとプログラミング » プログラムの基本要素

正解

解説

if文による選択処理を使って、変数 num の値を以下の4つの条件で分けています。
  1. 3で割り切れる(3で割り切れて5で割り切れない場合)
  2. 5で割り切れる(5で割り切れて3で割り切れない場合)
  3. 3と5で割り切れる(3と5で割り切れる場合)
  4. 3でも5でも割り切れない(上記以外)
①と②の条件は、それぞれ③の条件の一部分となっています。③の条件を満たすときは常に①の条件を満たすので、aに①を入れると、"3と5で割り切れる"値についても"3で割り切れる"と表示されてしまうため適切ではありません。同様に、③の条件を満たすときは常に②の条件を満たすので、aに②を入れると、"3と5で割り切れる"値についても"5で割り切れる"と表示されてしまうため適切ではありません。このため一番最初の判定条件であるaには③の"3と5"を入れ、"3と5"で割り切れなかった値について、"3"で割り切れるか、"5"で割り切れるかの判定を行う必要があります。

したがってaが"3と5"になっている「ウ」が適切です。

なお、"3"および"5"はbcのどちらに入れても正しく動作します。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop