Revolucent icon

Haskell FizzBuzz

Revolucent | PRO | 01/01/21 07:13:14 AM UTC | 0 โญ | 14584 ๐Ÿ‘๏ธ | Never โฐ | []
Haskell |

340 B

|

None

|

0 ๐Ÿ‘

/

0 ๐Ÿ‘Ž

module Main where
ย 
import Control.Applicative
import Data.Maybe
ย 
f :: Integer -> String -> Integer -> Maybe String
f k s i = if i `rem` k == 0 then Just s else Nothing
ย 
opts = [f 15 "FizzBuzz", f 3 "Fizz", f 5 "Buzz"]
ย 
fizzBuzz n = fromJust $ foldr1 (<|>) $ (opts <*> pure n) <> [Just $ show n]
ย 
main = mapM_ (putStrLn . fizzBuzz) [1..1000] 

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    ๐Ÿ‘

    /

    ๐Ÿ‘Ž

    
        
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    ๐Ÿ‘

    /

    ๐Ÿ‘Ž