本题要求两个给定正整数的最大公约数和最小公倍数。
输入格式:
输入在一行中给出两个正整数M和N(≤1000)。
输出格式:
在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。
输入样例:
511 292
输出样例:
73 2044
num1,num2 = map(int,input().split(' '))
#最大公约数
def Gcd (num1,num2):
if num2 % num1 == 0:
return num1
else:
#较小数的一半开始递减判断的计数器定义
i = int(num1/2)
while i >= 2:
if num1 % i == 0:
#较小数的因数对于较大的数是否也能除尽
if num2 % i == 0:
return i
i -= 1
if i == 1:
return 1
#最小公倍数
def Lcm (num1,num2):
if num2 % num1 == 0:
return num2
else:
#较大数的倍数开始递增计数器定义
i = 2
while True:
temp = num2 * i
#较大数的倍数对于较小数是否也能被除尽