summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xgcd.py16
1 files changed, 7 insertions, 9 deletions
diff --git a/gcd.py b/gcd.py
index 3690ef5..df3baf6 100755
--- a/gcd.py
+++ b/gcd.py
@@ -5,16 +5,14 @@ import functools
def gcd2(a, b):
- if b == 0:
- return a
- else:
- return gcd2(b, a % b)
+ while b != 0:
+ a, b = b, a % b
+ return a
-def gcdn(ns):
- return functools.reduce(gcd2, ns)
+def gcdn(nums):
+ return functools.reduce(gcd2, nums)
-ints = map(int, sys.argv[1:])
-gcd = gcdn(ints)
-print(gcd)
+if len(sys.argv) > 1:
+ print(gcdn(map(int, sys.argv[1:])))