Haskell Quiz/FizzBuzz/Solution Acontorer: Difference between revisions
< Haskell Quiz | FizzBuzz
New page: FizzBuzz <haskell> -- This implementation is designed to demonstrate extensibility, -- as the list of tags can be easily edited, loaded from a file, et... |
m Reverted edits by Tomjaguarpaw (talk) to last revision by Acontorer |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
<haskell> | <haskell> | ||
-- This implementation is designed | -- a FizzBuzz (and FizzBuzzBaz) solution by Aaron Contorer. | ||
-- This implementation is designed for extensibility, | |||
-- as the list of tags can be easily edited, loaded from a file, etc. | -- as the list of tags can be easily edited, loaded from a file, etc. | ||
-- Number range is set >100 so as to demonstrate the FizzBuzzBaz case. | |||
fizzBuzz i = if null desc then show i else desc where | fizzBuzz i = if null desc then show i else desc where |
Latest revision as of 15:19, 6 February 2021
-- a FizzBuzz (and FizzBuzzBaz) solution by Aaron Contorer.
-- This implementation is designed for extensibility,
-- as the list of tags can be easily edited, loaded from a file, etc.
-- Number range is set >100 so as to demonstrate the FizzBuzzBaz case.
fizzBuzz i = if null desc then show i else desc where
desc = concat [label | (j,label) <- tags, 0 == rem i j]
tags = [ (3,"Fizz"), (5,"Buzz"), (7,"Baz") ]
main = mapM_ (putStrLn . fizzBuzz) [1..120]