Sha256: 25e95d173e58cb7b3d01676cd74ed53d1e1144b015f2098c3a43c849956a6da9
Contents?: true
Size: 518 Bytes
Versions: 3
Compression:
Stored size: 518 Bytes
Contents
class Integer # Calculate the factorial of an integer. # # 2.factorial #=> 2 # 3.factorial #=> 6 # 3.factorial #=> 24 # # CREDIT: Malte Milatz def factorial return 1 if zero? f = 1 2.upto(self) { |n| f *= n } f end alias_method( :fac, :factorial ) #-- OLD CODE #def factorial # return 1 if self == 0 # #self == 0 ? 1 : ( self * (self-1).factorial ) # f = (1..self.abs).inject { |state, item| state * item } # return self < 0 ? -f : f #end #++ end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
facets-2.2.0 | lib/core/facets/integer/factorial.rb |
facets-2.2.1 | lib/core/facets/integer/factorial.rb |
facets-2.3.0 | lib/core/facets/integer/factorial.rb |