Scala で FizzBuzz

今更だけど、FizzBuzzやってみる。

「1から100までの数字を画面に表示する」「3の倍数のときは数字の代わりにFizzと表示する」「5の倍数のときは数字の代わりにBuzzと表示する」「15の倍数のときは数字の代わりにFizzBuzzと表示する」プログラム

フィズバズ問題 (FizzBuzz問題)

なんか、Twitterで時々出てきてなんだろうと思ってたけど、思ったより単純な問題だった。

シンプルに。Scala で書くならパターンマッチで書くのがデフォかな。

def fizzBuzz(n: Int): String = {
  n match {
    case fbzz if fbzz % 15 == 0 => "FizzBuzz"
    case fizz if fizz % 3 == 0  => "Fizz"
    case buzz if buzz % 5 == 0  => "Buzz"
    case num => num.toString
  }
}

(1 to 100).map(fizzBuzz).foreach(println)

これだけ。少し気になった。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。