地獄の FizzBuzz その 2

Ruby

(1 .. 100).each {|i|
  s = [[3, "Fizz"],
    [5, "Buzz"],
    [7, "Pezz"],
    [11, "Hozz"],
    [13, "Shizu"]].map {|n, s|
      if i % n == 0 then s else "" end
    }.join ""
  if s.empty? then s = i.to_s end
  puts s
}

実行結果

$ ruby19 fizzbuzz.rb
1
2
Fizz
4
Buzz
Fizz
Pezz
8
Fizz
Buzz
Hozz
Fizz
Shizu
Pezz
FizzBuzz
16
17
Fizz
19
Buzz
FizzPezz
Hozz
23
Fizz
Buzz
Shizu
Fizz
Pezz
29
FizzBuzz
31
32
FizzHozz
34
BuzzPezz
Fizz
37
38
(略)