Haskell Quiz/FizzBuzz/Solution Ninju: Difference between revisions
< Haskell Quiz | FizzBuzz
Tomjaguarpaw (talk | contribs) (Remove old, not very useful page) |
m (Reverted edits by Tomjaguarpaw (talk) to last revision by Syzygies) |
||
Line 1: | Line 1: | ||
[[Category:Haskell Quiz solutions|FizzBuzz]] | |||
I think this is probably what I'd do in the interview situation - i.e. the first and most obvious thing that comes to mind. | |||
<haskell> | |||
module Main where | |||
main :: IO () | |||
main = printAll $ map fizzBuzz [1..100] | |||
where | |||
printAll [] = return () | |||
printAll (x:xs) = putStrLn x >> printAll xs | |||
fizzBuzz :: Integer -> String | |||
fizzBuzz n | n `mod` 15 == 0 = "FizzBuzz" | |||
| n `mod` 5 == 0 = "Fizz" | |||
| n `mod` 3 == 0 = "Buzz" | |||
| otherwise = show n | |||
</haskell> |
Latest revision as of 15:19, 6 February 2021
I think this is probably what I'd do in the interview situation - i.e. the first and most obvious thing that comes to mind.
module Main where
main :: IO ()
main = printAll $ map fizzBuzz [1..100]
where
printAll [] = return ()
printAll (x:xs) = putStrLn x >> printAll xs
fizzBuzz :: Integer -> String
fizzBuzz n | n `mod` 15 == 0 = "FizzBuzz"
| n `mod` 5 == 0 = "Fizz"
| n `mod` 3 == 0 = "Buzz"
| otherwise = show n