利用python输入两个正整数,计算它们的最大公约数
时间: 2023-11-22 12:04:33 浏览: 41
下面是Python代码实现:
```python
# 定义一个函数,求两个正整数的最大公约数
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
# 主程序
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 输出结果
print("{}和{}的最大公约数为:{}".format(a, b, gcd(a, b)))
```
运行结果示例:
```
请输入第一个正整数:12
请输入第二个正整数:16
12和16的最大公约数为:4
```
相关问题
利用python输入两个正整数,计算它们的最大公约数
以下是一个求最大公约数的Python程序:
```python
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 如果a比b小,则交换a和b
if a < b:
a, b = b, a
# 通过辗转相除法求最大公约数
while b != 0:
r = a % b
a = b
b = r
print("最大公约数为:", a)
```
程序的思路如下:
1. 首先输入两个正整数a和b,如果a比b小,则交换a和b。
2. 然后用辗转相除法求最大公约数,即用a除以b得到余数r,再用b除以r得到余数r1,以此类推,直到余数为0为止,此时a就是最大公约数。
3. 最后输出最大公约数a。
利用python输入两个正整数,计算它们的最小公倍数
可以使用以下代码来计算两个正整数的最小公倍数:
```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)` 来计算它们的最小公倍数。最后,程序输出结果。