【最大公约数】欧几里得算法

介绍

本篇介绍如何求2个整数的最大公约数,按《算法图解》中的思路也就是给你一块矩形土地,如何将其等分成面积最大的若干个方形?

欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数。应用领域有数学和计算机两个方面。计算公式gcd(a,b) = gcd(b,a mod b)。

代码实现

# 计算2个数最大公约数,欧几里得、辗转相除法
# 此处假设a>=b
def gcd(a, b):
    if b == 0:
        return a
    else:
        return gcd(b, a % b)


# 输出80
print(gcd(1680, 640))
posted @ 2021-12-01 10:20  一锤子技术员  阅读(14)  评论(0编辑  收藏  举报  来源