RosettaCodeData/Task/Left-factorials/Haskell/left-factorials.hs

21 lines
427 B
Haskell
Raw Permalink Normal View History

2015-02-20 09:02:09 -05:00
fact :: [Integer]
2017-09-23 10:01:46 +02:00
fact = scanl (*) 1 [1 ..]
2015-02-20 09:02:09 -05:00
leftFact :: [Integer]
leftFact = scanl (+) 0 fact
2017-09-23 10:01:46 +02:00
main :: IO ()
main =
mapM_
putStrLn
[ "0 ~ 10:"
, show $ (leftFact !!) <$> [0 .. 10]
, ""
, "20 ~ 110 by tens:"
, unlines $ show . (leftFact !!) <$> [20,30 .. 110]
, ""
, "length of 1,000 ~ 10,000 by thousands:"
, show $ (length . show . (leftFact !!)) <$> [1000,2000 .. 10000]
, ""
]