FizzBuzz問題 (Haskell)

a0002_009631

昨日、JavaでのFizzBuzz問題をやってみた私。
せっかくなので全く未経験のHaskellでもFizzBuzzをやってみようかと。

forループがない時点でどこから手を付けていいのやら…という感じですが、色々ウェブを漁ってみて、こんな感じなのかなぁ。

fizzbuzz n
  | mod n 15 == 0 = "FizzBuzz"
  | mod n 3 == 0  = "Fizz"
  | mod n 5 == 0  = "Buzz"
  | otherwise     = show n

main = do
  let resultstr = unlines (map fizzbuzz [1..100])
  putStr resultstr 

使い慣れたCライクな言語の世界からはまったく想像できないコードですが…

スポンサーリンク

フォローする

スポンサーリンク