python语言中,对输入的两个正整数a,b,返回最大公约数和最小公倍数
时间: 2024-10-28 17:06:55 浏览: 12
在Python中,你可以使用math库中的gcd函数来计算两个正整数的最大公约数(GCD),而最小公倍数(LCM)通常可以通过公式 `lcm(a, b) = abs(a * b) // gcd(a, b)` 来计算。这里是一个简单的示例:
```python
import math
def gcd_lcm(a, b):
# 计算最大公约数
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
# 计算最小公倍数
lcm = abs(a * b) // gcd(a, b)
return gcd(a, b), lcm
# 示例
a = int(input("请输入第一个正整数: "))
b = int(input("请输入第二个正整数: "))
gcd_result, lcm_result = gcd_lcm(a, b)
print(f"最大公约数 (GCD): {gcd_result}")
print(f"最小公倍数 (LCM): {lcm_result}")
相关问题
python:完成函数fun(a,b),该函数要返回两个正整数a、b的最大公约数和最小公倍数。主程序中输入两个正整数,调用该函数,并输出两个数的最大公约数和最小公倍数。
可以使用欧几里得算法求最大公约数,然后通过最大公约数和两个数的乘积求得最小公倍数,具体实现如下:
```python
def fun(a, b):
# 求最大公约数
while b != 0:
a, b = b, a % b
gcd = a
# 求最小公倍数
lcm = a * (b // gcd)
return gcd, lcm
# 主程序
a = int(input("请输入第一个正整数:"))
b = int(input("请输入第二个正整数:"))
gcd, lcm = fun(a, b)
print("{}和{}的最大公约数为{},最小公倍数为{}。".format(a, b, gcd, lcm))
```
执行以上代码,输入两个正整数,即可得到它们的最大公约数和最小公倍数。
求两数的最大公约数和最小公倍数 输入两个正整数m和n,求其最大公约数和最小公倍数 输入说明: 两个正整数 输出说明: 最大公约数最小公倍数
以下是求两数的最大公约数和最小公倍数的Python代码:
```python
def gcd(a, b):
"""
求a和b的最大公约数
"""
if b == 0:
return a
else:
return gcd(b, a % b)
def lcm(a, b):
"""
求a和b的最小公倍数
"""
return a * b // gcd(a, b)
m, n = map(int, input().split())
print("最大公约数为:", gcd(m, n))
print("最小公倍数为:", lcm(m, n))
```
阅读全文