-
-
Save randomdude999/81fd0e857e23060b0cb18324faf001e5 to your computer and use it in GitHub Desktop.
GCD and LCM functions in Python
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import math | |
import functools | |
# Greatest common divisor of more than 2 numbers. Am I terrible for doing it this way? | |
def gcd(*numbers): | |
"""Return the greatest common divisor of the given integers""" | |
return functools.reduce(math.gcd, numbers) | |
# Least common multiple is not in standard libraries? It's in gmpy, but this is simple enough: | |
def lcm(*numbers): | |
"""Return lowest common multiple.""" | |
def lcm(a, b): | |
return (a * b) // math.gcd(a, b) | |
return functools.reduce(lcm, numbers, 1) | |
# Assuming numbers are positive integers... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment