HaskellでFizzBuzz
もう少しスマートに書けるような気がする。
main = putStr $ loop 1 100
loop s e
| s > e = ""
| otherwise = (fizzbuzz s) ++ "\n" ++ (loop (s+1) e)
fizzbuzz x
| x `isMultiple` 3 && x `isMultiple` 5 = "fizzbuzz"
| x `isMultiple` 3 = "fizz"
| x `isMultiple` 5 = "buzz"
| otherwise = show (x)
isMultiple x y = (x `mod` y) == 0
コメント