応用情報技術者試験 令和7年度春期 午前 問7「fact(n) は,非負の整数 n に対して n の階乗を返す。fact(n) …」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約65%です。
ウ. if n=0 then return 1 else return n×fact(n-1)
正答率 65.3%(432人中 282人が正解)
階乗は 0! = 1、n! = n × (n-1)! と再帰的に定義できる。再帰では、n = 0 の終了条件で 1 を返し、それ以外では n より小さい値で自分自身を呼ぶ必要がある。したがって n = 0 のとき 1 を返し、そうでなければ n × fact(n-1) を返す定義が正しい。