1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzzBuzzz
16
…
1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。
ルールは以上。
非常に簡単ですね。
Pythonで書くのも非常に簡単でございやした。
for i in range(1,101):
if i%3 == 0 and i%5 == 0:
print 'FizzzBuzzz'
elif i%3 == 0:
print 'Fizz'
elif i%5 == 0:
print 'Buzz'
else:
print i
これを思いつきましたが、後から調べてみるともっとスマートにする方法として
if i%3 == 0 and i%5 == 0:
を
if i%15 == 0:
に変更したりとか、究極ワンライナーで頑張るとか…
これは非常にベーシックなやつで、集合演算だのどうのこうのかなり豊富なバリエーションがあるようです。