python随机生成3个正整数,求这三个数的最大公约数和最小公倍数
时间: 2024-05-02 10:21:24 浏览: 100
用python编写两个正整数的最大公约数和最小公倍数的小程序
可以使用Euclid算法来求最大公约数,使用最大公约数和两数之积来求最小公倍数。
以下是Python代码实现:
```python
import random
# 生成3个随机正整数
a = random.randint(1, 100)
b = random.randint(1, 100)
c = random.randint(1, 100)
# 输出生成的数
print("生成的三个数分别为:", a, b, c)
# 求最大公约数
def gcd(x, y):
if y == 0:
return x
else:
return gcd(y, x % y)
# 求最小公倍数
def lcm(x, y):
return x * y // gcd(x, y)
# 求三个数的最大公约数和最小公倍数
g = gcd(gcd(a, b), c)
l = lcm(lcm(a, b), c)
# 输出结果
print("三个数的最大公约数为:", g)
print("三个数的最小公倍数为:", l)
```
运行结果可能如下:
```
生成的三个数分别为: 22 58 87
三个数的最大公约数为: 1
三个数的最小公倍数为: 3606
```
阅读全文