CodeIQ で 不適切な FizzBuzz という課題がありました。
先日、その結果が発表されたようです。
不適切の、不適切による、不適切のための『FizzBuzz』結果発表!
https://codeiq.jp/magazine/2015/04/22840/
ここまでやるかという投稿がたくさんありますね…(笑)
そんな素敵な投稿に混じって…まさかの自分の投稿(by なおう)もありました(笑)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | class Checker def initialize(msg, count) @msg = msg; @count = count; @alive = false end def process @alive &&= @num >= @count @num -= @num > @count ? @count : 0 (@hit ||= @num == @count) ? @msg : '' end def setNum(num) @num = num; @alive = true; @hit = false end def alive?; @alive end def hit?; @hit end def destroy; @alive = false end end checkers = [Checker.new('Fizz', 3), Checker.new('Buzz', 5), Checker.new('FizzBuzz', 15)] (1..100).each do |i| checkers.each {|c| c.setNum(i)} while checkers.any?(&:alive?); checkers.tap{|c| print c.map(&:process).join}.any?(&:hit?) && checkers.each(&:destroy) end checkers.none?(&:hit?) && print(i) end |
他の投稿が素敵すぎて恐れ多い感じですが、
乗ったのは純粋に嬉しいですね(`・ω・´)
Spread the love