問題
再帰関数sumN(n)=n+sumN(n-1)でsumN(0)=0のときsumN(5)は何か。
選択肢
- 115
- 210
- 35
- 425
正解
1. 15
詳しい解説を見る解説を閉じる
解説
再帰関数sumN(n)=n+sumN(n-1)、基底条件sumN(0)=0を展開すると、sumN(5)=5+sumN(4)=5+4+sumN(3)=5+4+3+sumN(2)=5+4+3+2+sumN(1)=5+4+3+2+1+sumN(0)=5+4+3+2+1+0=15となり、15が正解である。これは1からnまでの総和を再帰で求める関数であり、公式n(n+1)/2=5×6÷2=15でも検算できる。10はsumN(4)の値で展開不足の誤り、5は最初の項だけを見た誤り、25は5×5のような誤計算である。頻出ポイントは①基底条件sumN(0)=0に到達して再帰が停止することを最初に確認する読み方、②漸化式のパターン認識で「n+再帰なら総和、n×再帰なら階乗」と形から計算内容を見抜けること、の2点である。展開は省略せず書き出すのが確実である。
一問一答
科目A 180問+科目B 60問