Python输入两个正整数 求最大公约数和最小公倍数 点击复制后,将打开C知道体验页
时间: 2024-06-01 19:01:47 浏览: 85
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
# 求最大公约数
if a > b:
a, b = b, a
for i in range(a, 0, -1):
if a % i == 0 and b % i == 0:
print("最大公约数为:", i)
break
# 求最小公倍数
for i in range(b, a * b + 1, b):
if i % a == 0:
print("最小公倍数为:", i)
break
相关问题
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))
```
希望能对您有所帮助!
python输入两个正整数求最大公约数,和最小公倍数 函数
在Python中,你可以使用math库提供的gcd函数(最大公约数)和一些数学原理来计算两个正整数的最大公约数(GCD),然后利用公式(两数之积等于最大公约数乘以两数的最小公倍数)来求解最小公倍数(LCM)。下面是一个简单的函数示例:
```python
import math
def gcd_lcm(num1, num2):
def lcm(a, b):
return (a * b) // math.gcd(a, b)
# 计算最大公约数
gcd = math.gcd(num1, num2)
# 计算并返回最小公倍数
lcm_value = lcm(num1, num2)
return gcd, lcm_value
# 示例
num1 = int(input("请输入第一个正整数: "))
num2 = int(input("请输入第二个正整数: "))
result = gcd_lcm(num1, num2)
print(f"这两个数的最大公约数是 {result[0]},最小公倍数是 {result[1]}")
```
在这个函数中,首先导入math库,然后定义了一个嵌套函数`lcm`用于计算两数的最小公倍数。接着,调用`math.gcd`获取两个输入数字的最大公约数,最后通过两数乘积除以最大公约数得到最小公倍数,并将结果返回。
阅读全文