noritsuguの日記

2009-04-06``Algorithms'' (31) Exercise 2.2

fact 1 = 1
fact n = n * fact (n-1)

で、

*Main> fact 5
120
*Main> fact 0
*** Exception: stack overflow

fact 1              =  1
fact n | n < 0      = -1
       | otherwise = n * fact (n-1)

で、

*Main> fact 5
120
*Main> fact 0
0
*Main> fact (-1)
-1
*Main> fact (-2)
-1
トラックバック - http://haskell.g.hatena.ne.jp/noritsugu/20090406