Greatest common divisor: Difference between revisions

Content added Content deleted
(→‎{{header|AutoHotkey}}: Changed non-recursive version (slightly faster))
m (→‎{{header|Clojure}}: gcd of list of numbers)
Line 618: Line 618:


That <code>recur</code> call is the same as <code>(gcd b (mod a b))</code>, but makes use of Clojure's explicit tail call optimization.
That <code>recur</code> call is the same as <code>(gcd b (mod a b))</code>, but makes use of Clojure's explicit tail call optimization.

This can be easily extended to work with variadic arguments:

<lang lisp>(defn gcd*
"greatest common divisor of a list of numbers"
[& lst]
(reduce gcd
lst))</lang>


=={{header|COBOL}}==
=={{header|COBOL}}==