对输入的两个整数mn 求他们的最大公约数python
时间: 2024-02-27 17:58:31 浏览: 73
好的,以下是对输入的两个整数mn 求他们的最大公约数的Python代码:
```python
# 定义一个函数用于求最大公约数
def gcd(m, n):
if m < n:
m, n = n, m # 保证m >= n
while n != 0:
m, n = n, m % n
return m
# 读取输入的两个整数
m = int(input("请输入第一个整数m: "))
n = int(input("请输入第二个整数n: "))
# 调用函数求最大公约数
result = gcd(m, n)
# 输出结果
print("{0}和{1}的最大公约数是{2}".format(m, n, result))
```
具体的求最大公约数的方法是,先将两个整数中较大的数赋给m,较小的数赋给n,然后执行以下操作:
- 如果n等于0,那么m就是最大公约数;
- 否则,将n赋给m,将m除以n的余数赋给n,再执行上述操作。
最后输出结果即可。
希望能够帮到你!
相关问题
输入两个正整数mn求他们的最大公因数
可以使用辗转相除法求两个正整数的最大公因数。
具体步骤如下:
1. 用较大的数除以较小的数,得到余数和商。
2. 若余数为0,则较小的数即为最大公因数。
3. 若余数不为0,则用较小的数除以余数,得到新的余数和商。
4. 重复上述步骤,直到余数为0。
最后一次除法的除数就是最大公因数。
下面是一个求最大公因数的 Python 代码实现:
```python
def gcd(m, n):
if m < n:
m, n = n, m # 交换m和n,使得m >= n
while n != 0:
r = m % n
m = n
n = r
return m
```
在这个代码中,我们先判断m和n的大小关系,确保m大于等于n。然后使用while循环进行辗转相除,直到n等于0为止。最后返回最大公因数m。
输入两个正整数mn,求求最大公约数和最小公倍数
输入两个正整数m和n,可以通过以下步骤求得它们的最大公约数和最小公倍数:
1. 从m和n中较小的数开始,从该数到1依次判断是否同时能被m和n整除,找到第一个能被整除的数即为它们的最大公约数。
2. 最小公倍数等于两数之积除以它们的最大公约数。
以下是代码实现:
```python
# 最大公约数
def gcd(m, n):
if m < n:
m, n = n, m
while n != 0:
m, n = n, m % n
return m
# 最小公倍数
def lcm(m, n):
return m * n // gcd(m, n)
m = int(input("请输入第一个正整数:"))
n = int(input("请输入第二个正整数:"))
print("它们的最大公约数为:", gcd(m, n))
print("它们的最小公倍数为:", lcm(m, n))
```
阅读全文
相关推荐














