Namara

毎日コード。手助けなし。

2026-08-21

Factorial.hs

factorial :: Integer -> Integer
factorial n = n * factorial (n - 1)

このコードは決して終了しません。修正してください。

答え

基底ケースがないため、0を通り過ぎて負の数に入っても、止まることなく永遠に再帰し続けます。再帰のケースより前に、独立した等式としてfactorial 0 = 1を追加してください。