利用python输入两个正整数,计算它们的最小公倍数
时间: 2023-11-22 11:04:33 浏览: 33
可以使用以下代码来计算两个正整数的最小公倍数:
```python
# 定义函数来计算最大公约数
def gcd(a, b):
if b == 0:
return a
return gcd(b, a % b)
# 输入两个正整数
num1 = int(input("请输入第一个正整数:"))
num2 = int(input("请输入第二个正整数:"))
# 计算最小公倍数
lcm = (num1 * num2) // gcd(num1, num2)
# 输出结果
print("最小公倍数为:", lcm)
```
这个程序首先定义了一个 `gcd()` 函数来计算两个数的最大公约数(使用递归实现)。然后,程序输入两个正整数,并使用公式 `lcm = (num1 * num2) // gcd(num1, num2)` 来计算它们的最小公倍数。最后,程序输出结果。
相关问题
python输入两个正整数。求最小公倍数用while实现
你好,我可以回答这个问题。以下是用 while 实现求两个正整数的最小公倍数的 Python 代码:
```
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 求最大公约数
m = a
n = b
while n != :
r = m % n
m = n
n = r
# 求最小公倍数
lcm = a * b // m
print("最小公倍数为:", lcm)
```
希望能帮到你!
输入两个正整数求它们的最小公倍数
求两个正整数的最小公倍数可以通过先求它们的最大公约数,再用两数之积除以最大公约数得到。最大公约数可以用辗转相除法(又称欧几里得算法)求得,具体步骤如下:
1. 用较小数除以较大数,得到余数(0除外);
2. 用上一步得到的余数去除较小数,再得到余数(若余数为0,则最大公约数为除数,否则继续执行下一步);
3. 重复上一步,直到余数为0,此时除数即为最大公约数。
最小公倍数等于两数之积除以它们的最大公约数。
以下是 Python 代码实现:
```python
def gcd(a, b):
# 求a和b的最大公约数
while b:
a, b = b, a % b
return a
def lcm(a, b):
# 求a和b的最小公倍数
return a * b // gcd(a, b)
# 读入两个正整数
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 输出它们的最小公倍数
print("它们的最小公倍数是:", lcm(a, b))
```
示例输出:
```
请输入第一个正整数:12
请输入第二个正整数:18
它们的最小公倍数是: 36
```