lib/facet/integer/factorial.rb in facets-1.1.0 vs lib/facet/integer/factorial.rb in facets-1.2.0
- old
+ new
@@ -1,61 +2 @@
-#--
-# Credit: Malte Milatz
-#++
-
-class Integer
-
- # Calculate the factorial of an integer.
- #
- # 2.factorial #=> 2
- # 3.factorial #=> 6
- # 3.factorial #=> 24
- #
-
- def factorial
- return 1 if zero?
- f = 1
- 2.upto(self) { |n| f *= n }
- f
- end
-
- #--
- # TODO Pick one of these and deprecate the other. But which?
- #++
- alias_method( :fac, :factorial )
- alias_method( :fact, :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
-
-
-# _____ _
-# |_ _|__ ___| |_
-# | |/ _ \/ __| __|
-# | | __/\__ \ |_
-# |_|\___||___/\__|
-#
-=begin test
-
- require 'test/unit'
-
- class TCInteger < Test::Unit::TestCase
-
- def test_factorial
- assert_equal( 1, 0.factorial )
- assert_equal( 1, 1.factorial )
- assert_equal( 2, 2.factorial )
- assert_equal( 6, 3.factorial )
- assert_equal( 24, 4.factorial )
- end
-
- end
-
-=end
+require 'facets/core/integer/factorial.rb'
\ No newline at end of file