Enumerable#inject を使った解き方
n = gets.to_i
p (1..n).inject(:*)
再帰を使った解き方
def factorial(n)
if n < 0
'負の数の階乗は計算できません'
elsif n == 0
return 1
else
n * factorial(n - 1)
end
end
puts factorial(n)
n = gets.to_i
p (1..n).inject(:*)
def factorial(n)
if n < 0
'負の数の階乗は計算できません'
elsif n == 0
return 1
else
n * factorial(n - 1)
end
end
puts factorial(n)