mirror of
https://github.com/TheAlgorithms/Ruby
synced 2024-11-16 19:50:00 +01:00
29 lines
478 B
Ruby
29 lines
478 B
Ruby
# A ruby program calculate factorial of a given number.
|
|
# Mathematical Explanation: The factorial of a number is the product of all the integers from 1 to that number.
|
|
# i.e: n! = n*(n-1)*(n-2)......*2*1
|
|
|
|
#
|
|
# Approach: Interative
|
|
#
|
|
|
|
def factorial(n)
|
|
return nil if n < 0
|
|
|
|
fac = 1
|
|
|
|
while n > 0
|
|
fac *= n
|
|
n -= 1
|
|
end
|
|
|
|
fac
|
|
end
|
|
|
|
puts '4! = ' + factorial(4).to_s
|
|
# 4! = 24
|
|
|
|
puts '0! = ' + factorial(0).to_s
|
|
# 0! = 1
|
|
|
|
puts '10! = ' + factorial(10).to_s
|
|
# 10! = 3628800
|