方法一:辗转相除法
a,b = map(int,input().split())
c,d = a,b
if a>b:
a,b = b,a
r = a%b
while r !=0:
a,b = b,r
r = a%b
print(f"{c}和{d}的最大公因数是:{b}")
print(f"{c}和{d}的最小公倍数是:{c*d//b}")
方法二:自定义函数法
a,b=map(int,input().split())
def get(a,b):
if a%b==0:
return b
else:
return get(b,a%b)
print(f"{a}和{b}的最大公因数是:{get(a,b)}")
print(f"{a}和{b}的最小公倍数是:{a*b//get(a,b)}")
方法三:调用库函数法
from math import *
n, m = map(int, input().split())
print(f"{n}和{m}的最大公因数是:{gcd(n,m)}")
print(f"{n}和{m}的最小公倍数是:{n*m//gcd(n,m)}")