応用情報技術者試験 平成29年度秋期 午前 問7「fact (n) は,非負の整数 n に対して n の階乗を返す。fact (n…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約49%です。
ウ. if n=0 then return 1 else return n×fact (n−1)
正答率 48.7%(1,098人中 535人が正解)
階乗は、と定義できる。これを再帰で書くと、nが0のときは1を返し、そうでなければnにfact(n−1)を掛けて返す形になる。引数は呼び出すたびに基底の0へ近づく必要があり、基底での返値は掛け算に影響しない1でなければならない。