アルゴリズムとプログラミング
ITパスポート試験「アルゴリズムとプログラミング」の問題
関数 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,000
イ1,500
ウ3,000
エ5,500
正解
ウ.3,000
改善額20万円(200000円)は improvement<100000 が偽、短縮期間3日は period<7 が真なので prize=2000。改善額5万円(50000円)は improvement<100000 が真、短縮期間14日は period<7 が偽なので prize=1000。合計は 2000+1000=3000 円となり、ウが正解である。
?選択肢ごとの解説
ア ×1,000 は2件目(5万円・14日)単独の賞金額であり、1件目の2000円を加え忘れている。両方の合計を求める設問の要求を満たさない。
イ ×1,500 は2件とも period<7 が真と誤判定し 500+1000…
ウ ○改善額20万円(200000円)は improvement<100000 が偽、短縮期間3日は period<7 が真なので prize=2000。改善額5万円(50000円)は improvement<100000 が真、短縮期間14日は period<7 が偽なので prize=1000。合計は 2000+1000=3000 円となり、ウが正解である。
エ ×5,500 は内側の最大値 5000 を含めてしまった誤りである。5000 になるのは improvement≧100000 かつ period≧7…
アルゴリズムとプログラミングの他の問題
この問題の「深掘り・誤答の完全解説・試験のコツ・覚え方」はアプリで。
無料ではじめる →ITパスポート試験の全問を、一問ごとにAIの8-ways解説つきで。SRS暗記カード・全真模試・弱点診断まで。まずは無料で。
ukamiru 過去問 · ITパスポート試験 · itpass-r7k-q99
