编写一个函数,功能是求两个正整数 m 和 n 的最大公约数和最小公倍数,调用该函数,输出最大公约数和最小公倍数。python
时间: 2023-05-22 21:03:26 浏览: 588
以下是 Python 代码实现:
```python
def gcd_lcm(m, n):
"""
求两个正整数 m 和 n 的最大公约数和最小公倍数
"""
# 先求最大公约数
max_val = max(m, n)
min_val = min(m, n)
while min_val != 0:
tmp = max_val % min_val
max_val = min_val
min_val = tmp
gcd = max_val
# 再求最小公倍数
lcm = m * n // gcd
return gcd, lcm
# 调用函数并输出结果
m = 12
n = 18
res = gcd_lcm(m, n)
print("最大公约数:", res[0])
print("最小公倍数:", res[1])
```
输出结果为:
```
最大公约数: 6
最小公倍数: 36
```
希望能对您有所帮助!
相关问题
输入两个正整数m和n,求其最大公约数和最小公倍数(调用函数)。
以下是Python代码,用于输入两个正整数m和n,求其最大公约数和最小公倍数(调用函数):
```python
# 定义一个函数,用于求最大公约数
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
# 定义一个函数,用于求最小公倍数
def lcm(a, b):
return a * b // gcd(a, b)
# 从控制台输入两个正整数m和n
m = int(input("请输入第一个正整数m:"))
n = int(input("请输入第二个正整数n:"))
# 调用函数求最大公约数和最小公倍数
print("最大公约数为:", gcd(m, n))
print("最小公倍数为:", lcm(m, n))
```
输入两个正整数m和n,求其最大公约数和最小公倍数(要求使用函数调用)
好的,可以使用以下代码来实现:
```python
# 定义函数,计算最大公约数
def gcd(m, n):
while n != 0:
m, n = n, m % n
return m
# 定义函数,计算最小公倍数
def lcm(m, n):
return m * n // gcd(m, n)
# 主程序,获取输入并输出结果
m = int(input("请输入第一个正整数m:"))
n = int(input("请输入第二个正整数n:"))
print("最大公约数为:", gcd(m, n))
print("最小公倍数为:", lcm(m, n))
```
使用时,输入两个正整数m和n,即可得到它们的最大公约数和最小公倍数。