Fizz-Buzz問題はプログラミングの癖をみるのにいいと思う
先日Fizz-Buzz問題をやってみたんだが、これは色々な面でプログラミングセンスを測るのにすごくいいと思った。
シンプルな問題なんだけど、考えて見ると結構深いな〜なんて思わせてくれる。
Fizz-Buzz問題
1から100までの数をプリントするプログラムを書け。 ただし以下の条件を満たすこと。 3の倍数のときは数の代わりに「Fizz」とプリント。 5の倍数のときは「Buzz」とプリント。 3と5両方の倍数の場合には「FizzBuzz」とプリント。
この問題を「制限時間2分以内」という制約を付けてやってみるとさらにおもしろい。
2分以内だから、書き直す暇はないので、1回勝負で書くことになる。1回で書こうとするために頭の中で自分でベストと思うロジックで書くんだけど、短い時間で真剣に考えたシンプルな問題のコードは、書き手の癖がとてもよく出てると思う。
ちなみにおいらが書いたのはこんなん。
for(int i = 1; i <= 100; i++) { String str = i + ""; if((i % 3) == 0 && (i % 5) == 0) { str = "FizzBuzz"; } else if((i % 3) == 0) { str = "Fizz"; } else if((i % 5) == 0) { str = "Buzz"; } System.out.println(str); }
どう?それぞれ条件指定してるところが慎重さを物語ってません?
そうでもないか。。(´・ω・`)