すごいH本を読んでいて、初心者ながらまず書きたかったFizz Buzz書いてみたけど、本当にこれでいいのかモヤモヤしていたところ、親切なコメントをいただきました (ありがとうございます!)。
fizzbuzz :: [Int] -> [[Char]]
fizzbuzz [] = []
fizzbuzz (x:xs) |mod x 15 == 0 = "FizzBuzz" : fizzbuzz xs
|mod x 5 == 0 = "Buzz" : fizzbuzz xs
|mod x 3 == 0 = "Fizz" : fizzbuzz xs
|otherwise = show x : fizzbuzz xs
頂いたコメントを受け:
- 1行目は
fizzbuzz :: [Int] -> [String]
が適切 (何か変な気がしていました) - 3~6行目の冗長な感じも、頂いたコメントで解消しそうです (...勉強中)
※この場でこんな初心者が投稿していいかはわかりませんが、
まぁ無意味でもないと思われますので晒しておきます。