Files
cs-252/lab04/tailRecursion.hs
2026-02-11 11:27:00 -08:00

15 lines
274 B
Haskell

fact :: Integer -> Integer
fact 1 = 1
fact n = n * (fact $ n - 1)
fact' :: Integer -> Integer -> Integer
fact' 0 acc = acc
fact' n acc = fact' (n - 1) (n * acc)
fact2 :: Integer -> Integer -> Integer
fact2 n acc = if n == 0
then acc
else fact2 (n - 1) (n * acc)