python定义函数求两个正整数m,n的最大公约数
时间: 2023-09-14 18:09:36 浏览: 40
好的,可以使用辗转相除法来求解,代码如下:
```python
def gcd(m, n):
while n != 0:
m, n = n, m % n
return m
```
在函数中,我们不断地用 n 去除 m,直到 n 等于 0,此时 m 就是最大公约数,返回即可。
相关问题
python定义函数求两个正整数m,n的最大公约数使用递归来做
好的,可以使用递归来求解,代码如下:
```python
def gcd(m, n):
if n == 0:
return m
else:
return gcd(n, m % n)
```
在函数中,如果 n 等于 0,那么 m 就是最大公约数,直接返回。否则,递归调用函数自身,传入参数为 n 和 m 对 n 取模的结果。
python求两个正整数m和n的最大公约数
你好!感谢使用ChitGPT进行对话。关于你的问题,求两个正整数m和n的最大公约数,可以使用辗转相除法,也称为欧几里德算法,求解。具体步骤如下:
1. 如果m小于n,则交换m和n。
2. 用m除以n,得到余数r。
3. 如果r等于0,则n就是最大公约数。
4. 如果r不等于0,则让m等于n,n等于r,返回步骤2。
下面是使用Python实现辗转相除法的代码:
```python
def gcd(m, n):
if m < n:
m, n = n, m
while n != 0:
r = m % n
m = n
n = r
return m
```
你可以调用这个函数,传入你想要求最大公约数的两个正整数m和n,它将返回它们的最大公约数。希望这个答案能够帮助到你。