class Integer

Public Instance Methods

!() click to toggle source
# File lib/probaberry/counting.rb, line 2
def !
  if self > 0
    (1..self).reduce :*
  elsif self.zero?
    1
  else
    raise ArgumentError, "No factorial for #{self}"
  end
end
Also aliased as: "!@", fact
"!@"()
Alias for: !
choose(r) click to toggle source
# File lib/probaberry/counting.rb, line 15
def choose r
  raise ArgumentError, "r = #{r} is outside 0..#{self}" if r < 0 or r > self
  (self.!).fdiv((self - r).!).fdiv(r.!).to_i
end
fact()
Alias for: !