過去問ぽちぽちby KKM Studio

令和7年度 ITパスポート 問99 解説

関数calculateAmountOfPrizeは,業務改善の効果における改善額と短縮期間を,それぞれimprovementとperiodで受け取り,賞金額を戻り値とする。改善額が20万円で短縮期間が3日の業務改善と,改善額が5万円で短縮期間が14日の業務改善があった。この二つの賞金額の合計は何円か。ここで,改善額と短縮期間の値はそれぞれ0以上とする。

〔プログラム〕

○整数型: calculateAmountOfPrize(整数型: improvement, // 改善額(円)

                整数型: period) // 短縮期間(日)

 整数型: prize // 賞金額(円)

 if (improvement が 100000 より小さい)

  if (period が 7 より小さい)

   prize ← 500

  else

   prize ← 1000

  endif

 else

  if (period が 7 より小さい)

   prize ← 2000

  else

   prize ← 5000

  endif

 endif

 return prize

  1. ア1,000
  2. イ1,500
  3. ウ3,000
  4. エ5,500
答えを見る

正解 ウ3,000

要点条件分岐を順にたどって各賞金額を求めて合計する

解説

それぞれの業務改善を関数に当てはめます。

  • 改善額200,000円、短縮期間3日:improvementは100,000以上なのでelse側へ。periodは7より小さいのでprize=2,000
  • 改善額50,000円、短縮期間14日:improvementは100,000より小さいのでif側へ。periodは7以上なのでprize=1,000

合計=2,000+1,000=3,000[円]となり、ウが正解です。

  • ア:1,000は2件目だけの金額なので誤り。
  • イ:1,500は500と1,000の組合せで、1件目の判定を誤っているので誤り。
  • エ:5,500は5,000と500の組合せで、短縮期間の判定を逆にしているので誤り。
App

スキマ時間に、1問ずつ。
アプリ「ITパスポート 過去問ぽちぽち」

全問を正答・解説つきで収録。毎日の10問に、忘れた頃の復習が自然に混ざります。広告なし・買い切り。

App Store近日公開Google Play近日公開