class FizzBuzz

Constants

DEFINITIONS

Attributes

number[RW]

Public Class Methods

new(number) click to toggle source
# File lib/fizz_buzz.rb, line 5
def initialize(number)
  @number = number
end

Public Instance Methods

to_s() click to toggle source
# File lib/fizz_buzz.rb, line 13
def to_s
  convert if valid?
end
valid?() click to toggle source
# File lib/fizz_buzz.rb, line 9
def valid?
  number > 0
end

Private Instance Methods

calculate() click to toggle source
# File lib/fizz_buzz.rb, line 19
def calculate
  match = ""
  %w{3 5}.each do |n|
    match << DEFINITIONS[n] if number % n.to_i == 0
  end
  match
end
convert() click to toggle source
# File lib/fizz_buzz.rb, line 27
def convert
  result = calculate
  if result.empty?
    number
  else
    result
  end
end