Sha256: 4e0cf3eb3e1d0f0e1b65eb6e0d741fcc0fe46eabfce3fc5069371b55068ed3f3
Contents?: true
Size: 396 Bytes
Versions: 9
Compression:
Stored size: 396 Bytes
Contents
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
Version data entries
9 entries across 8 versions & 2 rubygems