科目Bに共通する注意事項(表記ルールなど)については、下記のリンク先を参照してください。
問題
次のプログラム中の空欄に入れる正しい答えを,解答群の中から選べ。
関数change は,10 より大きい整数を引数n で受け取り,1 円玉,5 円玉,10 円玉を使ってちょうどn 円にする組合せの総数を返す。
例えば,12 円にする組合せは,次のように数えられる。10 円玉を使わない場合には,1 円玉と5 円玉だけでちょうど12 円にすることになる。その組合せは,使える5円玉の枚数が0 以上 (12 ÷ 5 の商) 以下なので,(12 ÷ 5 の商) + 1 = 3 通りある。同様に,10 円玉を1 枚使う場合には,1 円玉と5 円玉だけでちょうど2 円にすることになり,その組合せは (2 ÷ 5 の商) + 1 = 1 通りある。10 円玉を2 枚以上使う組合せはない。よって,1 円玉,5 円玉,10 円玉を使ってちょうど12 円にする組合せは,3 + 1 = 4 通りである。
○整数型: change(整数型: n)
整数型: count ← 0
整数型: rest ← n
while ( 空欄 )
count ← count + (rest ÷ 5 の商) + 1
rest ← rest - 10
endwhile
return count
選択肢
- ア rest ≧ 0
- イ rest ≧ 5
- ウ rest ≧ 10
- エ rest > 0
- オ rest > 5
- カ rest > 10