Python 最大公约数

几个整数中公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。例如:12、16的公约数有1、2、4,其中最大的一个是4,4是12与16的最大公约数,一般记为(12,16)=4。12、15、18的最大公约数是3,记为(12,15,18)=3。

# 最大公约数

num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
# 方式1 for循环
# 获取两个数值中较小的值
if num1 > num2:
    m_value = num2
else:
    m_value = num1
# 从1开始遍历较小的值,找到公约数并不断更新最大公约数
for value in range(1, m_value + 1):
    if num1 % value == 0 and num2 % value == 0:
        val = value

print(num1, '、', num2, '的最大公约数是:', val)


# 方式2 函数
def gcd(a, b):
    if a > b:
        g_value = b
    else:
        g_value = a
    for va in range(1, g_value + 1):
        if a % va == 0 and b % va == 0:
            va_max = va
    return va_max  # 返回最大公约数


print(num1, '、', num2, '的最大公约数是:', gcd(num1, num2))

你可能感兴趣的:(python,java,算法)