用python输入任意两数求最大公约数和最小公倍数
时间: 2023-07-27 14:15:42 浏览: 85
好的,可以使用以下代码来实现:
```python
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
# 求最大公约数
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)
print("{}和{}的最大公约数为:{}".format(a, b, gcd(a, b)))
print("{}和{}的最小公倍数为:{}".format(a, b, lcm(a, b)))
```
输入两个数后,程序会自动计算它们的最大公约数和最小公倍数,并输出结果。
相关问题
用python输入任意两位数求最大公约数和最小公倍数
好的,可以使用以下代码来实现:
```python
a = int(input("请输入第一个两位数:"))
b = int(input("请输入第二个两位数:"))
# 求最大公约数
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)
print("{}和{}的最大公约数为:{}".format(a, b, gcd(a, b)))
print("{}和{}的最小公倍数为:{}".format(a, b, lcm(a, b)))
```
输入两个两位数后,程序会自动计算它们的最大公约数和最小公倍数,并输出结果。
python,对输入任意2数求最大公约数和最小公倍数
可以使用辗转相除法来求最大公约数,使用两数乘积除以最大公约数来求最小公倍数。下面是 Python 代码实现:
```python
def gcd(a, b):
if b == 0:
return a
return gcd(b, a % b)
def lcm(a, b):
return a * b // gcd(a, b)
num1 = int(input("请输入第一个数字:"))
num2 = int(input("请输入第二个数字:"))
print("{0}和{1}的最大公约数是{2}".format(num1, num2, gcd(num1, num2)))
print("{0}和{1}的最小公倍数是{2}".format(num1, num2, lcm(num1, num2)))
```
在上述代码中,函数 `gcd(a, b)` 表示求两个数的最大公约数,使用递归实现辗转相除法。函数 `lcm(a, b)` 表示求两个数的最小公倍数,使用两数乘积除以最大公约数的方法实现。最后,使用 `input()` 函数获取用户输入的两个数字,然后将结果输出。
阅读全文