Files
news.gitea.happylizard.me/bin/gems/facets-3.1.0/lib/standard/facets/math/gcd.rb
T
pizza2d1 4cee170d66
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 9s
Add bin and edit workflow
2026-09-16 13:11:16 -06:00

24 lines
396 B
Ruby

module Math
# Greatest common divisor of +m+ and +n+, +nil+ for non-positive
# numbers - gcd is computed by means of the Euclidian algorithm.
def self.gcd(m, n)
m = Integer(m)
n = Integer(n)
if m <= 0 || n <= 0
return nil
end
loop {
if m < n
m, n = n, m
end
if (l = m % n) == 0
break
end
m = l
}
n
end
end