如何用辗转相除法求最大公约数?
时间: 2024-06-14 08:03:23 浏览: 276
GYS.rar_求公约数
辗转相除法,也称欧几里得算法,是求两个正整数a和b的最大公约数的一种方法。其基本思想是:用较小的数除较大的数,再用现的余数去除除数,直到余数为零时,最后的除数即为这两个数的最大公约数。具体步骤如下:
1.设两个正整数为a和b(a>b);
2.用a除以b,得到余数r1;
3.用b除以r1,得到余数r2;
4.用r1除以r2,得到余数r3;
5.重复上述步骤,直到余数为0为止,此时的除数即为a和b的最大公约数。
以下是用Python实现辗转相除法求最大公约数的代码:
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
```
其中,a和b分别为两个正整数,函数返回值为它们的最大公约数。
阅读全文