class Probs::Probability

Public Class Methods

new(*args) click to toggle source
# File lib/probs/probability.rb, line 6
def initialize(*args)
  @rational = Rational(*args)
end

Public Instance Methods

chance(&block) click to toggle source
# File lib/probs/probability.rb, line 29
def chance(&block)
  Chance.new(self, &block)
end
decimal() click to toggle source
# File lib/probs/probability.rb, line 9
def decimal
  numerator.to_f / denominator
end
percentage() click to toggle source
# File lib/probs/probability.rb, line 12
def percentage
  decimal.to_f * 100
end
to_s(format=:percentage) click to toggle source
# File lib/probs/probability.rb, line 16
def to_s(format=:percentage)
  case format
  when :decimal
    decimal.to_s
  when :fraction
    "#{numerator}/#{denominator}"
  when :percentage
    percentage.to_s + '%'
  when :ratio
    "#{numerator}:#{denominator - numerator}"
  end
end