在Python中递归计算两个数的最大公约数的程序

在Python中递归计算两个数的最大公约数的程序

假设我们有两个数字a和b。我们要以递归的方式查找这两个数字的最大公约数。要获取最大公约数,我们将使用欧几里得算法。

所以,如果输入是a = 25,b = 45,那么输出将是5。

为了解决这个问题,我们将遵循以下步骤−

  • 定义一个名为gcd()的函数。这将使用a、b
  • 如果a与b相同,则
    • 返回a
  • 否则,当a < b时,
    • 返回gcd(b, a)
  • 否则,
    • 返回gcd(b, a-b)

示例

让我们看看以下实现,以更好地理解−

def gcd(a, b):
   if a == b:
      return a
   elif a < b:
      return gcd(b, a)
   else:
      return gcd(b, a-b)

a = 25
b = 45
print(gcd(a, b))

输入

25, 45

输出

5

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程