RosettaCodeData/Task/FizzBuzz/Haskell/fizzbuzz-5.hs

16 lines
328 B
Haskell
Raw Permalink Normal View History

2019-09-12 10:33:56 -07:00
import Data.List (zipWith3)
import Data.Bool (bool)
2013-06-05 21:47:54 +00:00
2019-09-12 10:33:56 -07:00
fizzBuzz :: [String]
fizzBuzz =
zipWith3
(\f b n ->
let fb = f ++ b
in bool fb n (null fb))
(cycle $ replicate 2 [] ++ ["fizz"])
(cycle $ replicate 4 [] ++ ["buzz"])
(show <$> [1 ..])
2013-10-27 22:24:23 +00:00
2019-09-12 10:33:56 -07:00
main :: IO ()
main = mapM_ putStrLn $ take 100 fizzBuzz