Instantly share code, notes, and snippets.

Embed
What would you like to do?

やったこと

SwiftでFizzBuzzをやった

勉強がてらFizzBuzzをやろうとした。 最初考えてた方法。

  • if分が美しくない。
  • 配列がベタ書き
[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15].map {
  if $0 % 15 == 0 {return "Fizz Buzz"}
  else if $0 % 5  == 0 { return "Fizz" }
  else if $0 % 3  == 0 {return "Buzz"}
  return "\($0)"
}.forEach { print($0) }

調べて出てきたやつ綺麗※参考

(1...100).map { switch ($0 % 3, $0 % 5) {
    case (0, 0): return "Fizz Buzz"
    case (0, _): return "Fizz"
    case (_, 0): return "Buzz"
    case (_, _): return "\($0)"
} }.forEach { print($0) }

わかったこと

  • swiftのrange型"(1...100)"を知らなかった便利
  • switchの引数2つを使うと美しくかけるすばらしい

次にしたいこと

ちゃんと言語仕様読もうかな

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment