Greatest common divisor: Difference between revisions

add swift
(add swift)
Line 3,254:
function LCM(n, k) {
return n * k / GCD(n, k);
}</lang>
=={{header|Swift}}==
<lang Swift>// Iterative
func gcd(var a:Int, var b:Int) -> Int {
if (a < 0) {
a = -a
}
if (b < 0) {
b = -b
}
if (b > a) {
var temp = a
a = b
b = temp
}
while (true) {
a %= b
if (a == 0) {
return b
}
b %= a
if (b == 0) {
return a
}
}
}
 
// Recursive
func gcd_rec(a:Int, b:Int) -> Int {
if (b != 0) {
return gcd_rec(b, a % b)
} else {
return abs(a)
}
}</lang>