自然数nに対して、次のとおり再帰的に定義される関数f(n)を考える。f(5)の値はどれか。 f(n):if n≦1 then return 1 else return n+f(n-1)
再帰は終了条件から逆に展開して具体値を積み上げる
選択肢
- ア6
- イ9
- ウ15
- エ25
正解と解説
正解:ウ 15
この関数は n が1以下になるまで n を足しながら自分自身を呼び出し、最後に1を返す。展開すると f(5)=5+f(4)、f(4)=4+f(3)、f(3)=3+f(2)、f(2)=2+f(1)、f(1)=1 となる。したがって f(5)=5+4+3+2+1=15 である。1からnまでの総和を求める典型的な再帰の形になっている。
選択肢ごとの解説
- ア1〜3の総和に相当し、再帰の展開が途中で止まっている。
- イ1〜4の総和に近い値で、最後の項を足し忘れた場合の値。
- ウ正解。5+4+3+2+1=15。
- エ5×5など、加算ではなく別の演算をした場合の値。
同じ分野の他の問題
- 次のプログラム中の a と b に入れる正しい答えの組合せを、解答群の中から選べ。ここで、配列の要素番号は1から始まる。…2026年度 公開問題 科目B 問5
- 次のプログラム中の に入れる正しい答えを、解答群の中から選べ。ここで、配列の要素番号は1から始まる。 関数func1に与…2026年度 公開問題 科目B 問3
- 次のプログラム中の に入れる正しい答えを、解答群の中から選べ。 関数complementは、引数として渡された8ビット型…2026年度 公開問題 科目B 問2
- 次のプログラム中の に入れる正しい答えを、解答群の中から選べ。ここで、配列の要素番号は1から始まる。 次のプログラムは、…2026年度 公開問題 科目B 問1
- 次のプログラム中の に入れる正しい答えを、解答群の中から選べ。 関数changeは、10より大きい整数を引数nで受け取り…2025年度 公開問題 科目B 問2
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。