カコモンノート

問2基本情報技術者 令和7年度 公開問題(科目B)

2 / 5問
令和7年度 公開問題(科目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 通りである。

この問題の図
問題に添えられた図。出典は下に書いています。

選択肢をえらぶと、答えと解説が出ます

選択肢をえらぶと、
ここに答えと解説が出ます
正答 1

解説

この関数は、いちばん大きい硬貨の枚数を零枚から一枚ずつ増やしながら、残りを小さい二種類で払う組合せの数を足し上げる。残りがちょうど零になったときも、小さい硬貨を一枚も使わないという払い方が一通りあるので、数に入れなければならない。だから繰返しを続ける条件は、残りが零を上回ることではなく、残りが零以上であることになる。

KEY POINT
組合せを数える繰返しは、残りが零になる場合も含めて続ける

「科目B」の他の問題

「科目B」42問をまとめて見る →

出典:令和7年度 基本情報技術者試験 科目B 問2(独立行政法人 情報処理推進機構(IPA))
独立行政法人情報処理推進機構(IPA)が公表している過去問題です。IPA の「過去問題の使用について」に基づき、IPA が指定する形で出典を明記して掲載しています(利用の許諾申請は不要)。問題文・選択肢の内容は変えていません。本文は IPA が公表した問題冊子の頁を人が読んで起こし、別の読み手が原本と突き合わせています。その都合で、改行・字間の空白は省き、英数字の全角・半角は元とそろえていない箇所があります。図表は IPA が公表した問題冊子のものです。解説は当サイトが独自に作成したもので、IPA とは関係ありません。