设计递归函数,求两个数的最大公约数
时间: 2024-02-04 20:42:05 浏览: 71
递归法求解两数的最大公约数
可以使用欧几里得算法(辗转相除法)来求两个数的最大公约数。具体来说,如果两个数a和b满足a>b,则有:
- 如果a能够被b整除,则最大公约数为b;
- 否则,最大公约数等于b和a%b的最大公约数。
可以使用以下的Python代码实现递归函数:
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
```
这个函数会在b等于0时停止递归,并返回a作为最终的结果。否则,它会递归调用gcd函数,并将b和a%b作为参数传递下去,直到b等于0。
阅读全文