欧几里得算法(Python3)

目的:找到两个数的最大公约数。

自然语言描述:计算两个非负整数num_1和num_2的最大公约数:

                       若num_2=0,则最大公约数为num_1;

                       若num_2≠0,则将num_1除以num_2得到余数 r;

                       num_1和num_2的最大公约数即为num_2和 r 的最大公约数。

print("计算两个非负整数的最大公约数")
num_1 = int(input("请输入第一个非负整数:"))
num_2 = int(input("请输入第二个非负整数:"))
def gcd(num_1,num_2):
    p,q=max(num_1,num_2),min(num_1,num_2)
    if q == 0:
        return p
    r = p%q
    return gcd(q,r)   
print("\n%s和%s的最大公约数是%s"%(num_1,num_2,gcd(num_1,num_2)))

点赞