输入两个正整数 m 和 n,求其最大公约数和最小公倍数,c
时间: 2023-09-08 21:11:27 浏览: 104
输入两个正整数m和n,求其最大公约数和最小公倍数
好的,我理解了你的要求。下面是回答:
首先,我们可以使用辗转相除法来求得两个正整数的最大公约数。具体步骤如下:
1. 如果 m < n,则交换 m 和 n。
2. 用 n 去除 m,得到余数 r。
3. 如果 r 等于 0,则 n 即为最大公约数。
4. 如果 r 不等于 0,则令 m = n,n = r,然后返回步骤 2。
代码如下:
```
def gcd(m, n):
if m < n:
m, n = n, m
while n:
m, n = n, m % n
return m
```
接下来,我们可以用最大公约数来求得最小公倍数,即:
最小公倍数 = m * n / 最大公约数
代码如下:
```
def lcm(m, n):
return m * n // gcd(m, n)
```
这样,我们就可以通过调用上述两个函数来得到最大公约数和最小公倍数了。
阅读全文