アルゴリズムとプログラミング
基本情報技術者試験 科目A免除 修了試験 20210725 実施分 問10
n の階乗を再帰的に計算する関数 F(n) の定義において,a に入れるべき式はどれか。ここで,n は非負の整数とする。
n > 0 のとき,F(n) = [ a ]
n = 0 のとき,F(n) = 1
- ア n+F(n-1)
- イ n-1+F(n)
- ウ n×F(n-1)
- エ (n-1)×F(n)
出典:基本情報技術者試験 科目A免除 修了試験 20210725 実施分 問10
答えと解説を見る
正解:ウ
覚える知識
階乗の再帰的定義(n×F(n−1))
階乗は F(n)=n×F(n−1)(n>0)、F(0)=1 と再帰的に定義される。
この問題で必要なこと
n!=n×(n−1)! なので F(n)=n×F(n−1)、F(0)=1。
ひっかけ
加算や F(n) 自身を含む式は階乗にならず再帰が終了しない。
この知識の出題:本試験系 0 回・免除試験 4 回(公開問題での観測値)