Class: ArrayToAverage::Calculate

Inherits:
Object
  • Object
show all
Defined in:
lib/array_to_average/calculate.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(numbers) ⇒ Calculate

Returns a new instance of Calculate.



5
6
7
8
9
# File 'lib/array_to_average/calculate.rb', line 5

def initialize numbers
  @numbers = numbers.kind_of?(Array) ? numbers : []
  @sum = @numbers.inject { |sum,number| sum ? sum + number.to_f : number.to_f } || 0
  @size = @numbers.empty? ? 1 : @numbers.size
end

Instance Attribute Details

#numbersObject (readonly)

Returns the value of attribute numbers.



3
4
5
# File 'lib/array_to_average/calculate.rb', line 3

def numbers
  @numbers
end

Instance Method Details

#averageObject



11
12
13
# File 'lib/array_to_average/calculate.rb', line 11

def average
  @sum / @size
end