【Python】最小公倍数と最大公約数を取得する【簡単】
pythonで最小公倍数や最大公約数を求めたいときがあると思う。
自分で関数を定義することなく、もともとあるpythonのライブラリを利用することで簡単に求めることができる。
ただし、pythonのバージョンによって使い方が異なるので注意。
Python3.4より前(最大公約数のみ、引数2つ)
最大公約数のみ求めることができる。
最小公倍数を求める関数は実装されていないらしい。
以下のようにして使う。
import fractions
print(fractions.gcd(4,6))
# 2
Python3.5以降(最大公約数のみ、引数2つ)
最大公約数のみ求めることができる。
↑と同じく最小公倍数を求める関数は実装されていないようだ。
以下のようにして使う。
import math
print(math.gcd(4,6))
# 2
Python3.9以降(最大公約数、最小公倍数、引数3つ以上も可)
Python3.9以降になると、最大公約数に加え、最小公倍数を求める関数も実装されているようだ。
しかも、引数が2つだけでなく、3つ以上にも対応している。
以下のようにして使う。
import math
# 最大公約数を求める
print(math.gcd(4,6,8))
# 2
# 最小公倍数を求める
print(math.lcm(4,6,8))
# 24