python

python中如何算出公约数

小亿
441
2023-10-27 16:40:08
栏目: 编程语言

在Python中,可以使用以下方法来计算两个数的公约数:

方法1:使用循环

def get_common_divisors(num1, num2):
    common_divisors = []
    smaller_num = min(num1, num2)
    for i in range(1, smaller_num + 1):
        if num1 % i == 0 and num2 % i == 0:
            common_divisors.append(i)
    return common_divisors

方法2:使用递归

def get_common_divisors(num1, num2):
    if num2 == 0:
        return num1
    else:
        return get_common_divisors(num2, num1 % num2)

以上两种方法都可以得到两个数的公约数。如果需要获取所有公约数,可以使用方法1中的循环方法,如果只需要获取最大公约数,则可以使用方法2中的递归方法。

0
看了该问题的人还看了