summaryrefslogtreecommitdiff
path: root/sample/fact.rb
diff options
context:
space:
mode:
Diffstat (limited to 'sample/fact.rb')
-rw-r--r--sample/fact.rb9
1 files changed, 4 insertions, 5 deletions
diff --git a/sample/fact.rb b/sample/fact.rb
index 1462a6923a..9f6ca72ca7 100644
--- a/sample/fact.rb
+++ b/sample/fact.rb
@@ -1,10 +1,9 @@
def fact(n)
return 1 if n == 0
f = 1
- while n>0
- f *= n
- n -= 1
+ n.downto(1) do |i|
+ f *= i
end
- return f
+ f
end
-print fact(ARGV[0].to_i), "\n"
+puts fact(ARGV[0].to_i)