在 Python 中程序运行时输入两个正整数,输出最大公约数和最小公倍数
时间: 2024-05-03 13:20:43 浏览: 74
最大公约数可以使用辗转相除法,在Python中可以这样实现:
```
def gcd(a, b):
while b != 0:
a , b = b , a % b
return a
```
最小公倍数可以通过公式 lcm(a, b) = a * b / gcd(a, b) 计算,也可以使用 Python 内置的 math 库中的 lcm() 函数实现:
```
import math
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
print("最大公约数为:", gcd(a, b))
print("最小公倍数为:", math.lcm(a, b))
```
希望能帮到你!
相关问题
求两数的最大公约数和最小公倍数 输入两个正整数m和n,求其最大公约数和最小公倍数 输入说明 两个正整数 输出说明 最大公约数最小公倍数 输入示例 36 输出示例 最大公约数:3 最小公倍数:6 >_编写程序
为了计算两个正整数 `m` 和 `n` 的最大公约数(Greatest Common Divisor,GCD)和最小公倍数(Least Common Multiple,LCM),你可以使用欧几里得算法(Euclidean Algorithm)来找到 GCD,然后利用公式 `GCD(m, n) * LCM(m, n) = m * n` 来计算 LCM。以下是Python的一个简单实现:
```python
def gcd(m, n):
while n != 0:
temp = m % n
m = n
n = temp
return m
def lcm(m, n):
return (m * n) // gcd(m, n)
# 输入示例
m = int(input("请输入第一个正整数:"))
n = int(input("请输入第二个正整数:"))
# 计算并输出结果
gcd_value = gcd(m, n)
lcm_value = lcm(m, n)
print(f"最大公约数:{gcd_value}")
print(f"最小公倍数:{lcm_value}")
```
在这个程序中,用户需要输入两个正整数,程序会计算并打印出它们的最大公约数和最小公倍数。如果你想要运行这个代码,只需将输入部分的代码复制到一个Python环境中即可。
python输入两个正整数求最大公约数和最小公倍数
可以使用辗转相除法来求解最大公约数,而最小公倍数可以通过两数之积除以最大公约数来得到。
以下是Python代码实现:
```python
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 求最大公约数
def gcd(x, y):
if y == :
return x
else:
return gcd(y, x % y)
# 求最小公倍数
def lcm(x, y):
return x * y // gcd(x, y)
print("最大公约数为:", gcd(a, b))
print("最小公倍数为:", lcm(a, b))
```
希望能对您有所帮助!
阅读全文