This commit is contained in:
Ingy döt Net 2013-04-10 21:29:02 -07:00
parent 764da6cbbb
commit db842d013d
19005 changed files with 197040 additions and 7 deletions

View file

@ -0,0 +1 @@
factorial n = product [1..n]

View file

@ -0,0 +1 @@
factorial n = foldl (*) 1 [1..n]

View file

@ -0,0 +1 @@
factorials = scanl (*) 1 [1..]

View file

@ -0,0 +1,3 @@
factorial :: Integral -> Integral
factorial 0 = 1
factorial n = n * factorial (n-1)

View file

@ -0,0 +1,5 @@
fac n
| n >= 0 = go 1 n
| otherwise = error "Negative factorial!"
where go acc 0 = acc
go acc n = go (acc * n) (n - 1)