>>541 Rubyっぽくわけるならこうだろ。
module FizzBuzz
def each
super do |i|
yield case
when (i % 15).zero?; 'FizzBuzz'
when (i % 3).zero?; 'Fizz'
when (i % 5).zero?; 'Buzz'
else i
end
end
end
end
fizzbuzz = (1..100).extend(FizzBuzz)
puts fizzbuzz.to_a
fizzbuzz.each {|x| puts x}
全部一度に生成させるも一つずつ処理するも自由。