問題
選択肢
- 14
- 210
- 324
- 4120
正解
3. 24
詳しい解説を見る解説を閉じる
解説
この関数はforループでresultに1からnまでの整数を順に掛けており、n!(nの階乗)を反復処理で計算するものである。fact(4)の途中経過を追うと、result=1から始まり、i=1で1×1=1、i=2で1×2=2、i=3で2×3=6、i=4で6×4=24となり、戻り値は24である。4は引数nをそのまま返すと誤読した場合、10は掛け算ではなく足し算(1+2+3+4)と取り違えた場合、120は5!(fact(5))の値であり1回多く掛けた場合の誤りである。階乗は再帰関数の題材としても頻出であり、4!=24、5!=120は即答できるようにしておくと、再帰版・反復版のどちらの出題にも素早く対応できる。
一問一答
科目A 180問+科目B 60問