输入两个正整数,求最大公约数和最小公倍数
时间: 2023-11-17 18:59:37 浏览: 77
Java求两个正整数的最大公约数和最小公倍数
5星 · 资源好评率100%
最大公约数(GCD)可以使用欧几里得算法(辗转相除法)求解,即不断用较小数去除较大数,直到其中一个数为零,此时另一个数即为最大公约数。
最小公倍数(LCM)可以通过两数之积除以它们的最大公约数求得。
以下是Python代码实现:
```python
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 求最大公约数
x, y = a, b
while y != 0:
x, y = y, x % y
gcd = x
# 求最小公倍数
lcm = a * b // gcd
print(f"{a}和{b}的最大公约数为{gcd}")
print(f"{a}和{b}的最小公倍数为{lcm}")
```
示例输出:
```
请输入第一个正整数:12
请输入第二个正整数:18
12和18的最大公约数为6
12和18的最小公倍数为36
```
阅读全文