利用辗转相除法求两个整数的最大公因数和最小公倍数
时间: 2023-09-22 22:06:55 浏览: 190
C语言求最大公约数和最小公倍数算法总结
5星 · 资源好评率100%
假设要求两个整数 a 和 b 的最大公因数和最小公倍数。
最大公因数可以使用辗转相除法求解,具体步骤如下:
1. 用较小的数去除较大的数,如果能整除,则较小的数就是这两个数的最大公因数;
2. 如果不能整除,则用余数(较大的数除以较小的数所得到的余数)去除较小的数;
3. 重复上述步骤直到余数为0,此时较小的数即为这两个数的最大公因数。
最小公倍数可以通过最大公因数求得,具体公式为:
最小公倍数 = a * b / 最大公因数
下面是一个求解最大公因数和最小公倍数的示例 Python 代码:
```python
def gcd(a, b):
while b:
a, b = b, a % b
return a
def lcm(a, b):
return a * b // gcd(a, b)
a = 24
b = 36
print("a 和 b 的最大公因数为:", gcd(a, b))
print("a 和 b 的最小公倍数为:", lcm(a, b))
```
输出结果为:
```
a 和 b 的最大公因数为: 12
a 和 b 的最小公倍数为: 72
```
阅读全文