python编写代码,用“穷举法”计算两个正整数m和n的最大公约数,m和n 的值通过键盘输入
时间: 2023-06-03 11:04:05 浏览: 204
没有问题,我可以回答。以下是Python代码示例:
```
m = int(input("请输入第一个正整数m:"))
n = int(input("请输入第二个正整数n:"))
if m > n:
larger = m
else:
larger = n
while True:
if larger%m == 0 and larger%n == 0:
print("最大公约数为:", larger)
break
larger += 1
```
通过输入两个正整数m和n,程序计算它们的最大公约数,并打印结果。这个算法的核心思想是从较大的数开始,逐个尝试所有可能的数,直到找到最大公约数为止。这被称为穷举法,也是一种简单但有效的算法。
相关问题
Python用穷举法计算两个给定正整数的最大公约数
好的,您可以尝试以下代码实现:
```python
def gcd(a, b):
"""
计算两个正整数的最大公约数
"""
if a > b:
smaller = b
else:
smaller = a
for i in range(1, smaller+1):
if((a % i == 0) and (b % i == 0)):
gcd = i
return gcd
a = 54
b = 24
print("最大公约数为:", gcd(a, b))
```
这个程序使用了穷举法来计算两个正整数的最大公约数。它首先找到两个数中的较小值,然后从1到这个较小值之间的所有整数进行循环遍历,找到同时能够被两个数整除的最大值,即为它们的最大公约数。
使用穷举法计算两个给定正整数的最大公约数
1. 找到两个正整数a和b,且a>b。
2. 从1到b枚举所有可能的公约数,将它们存储在一个列表中。
3. 遍历列表,找到最大的公约数。
4. 返回最大公约数。
Python代码示例:
```python
def gcd(a, b):
"""
计算a和b的最大公约数
"""
common_divisors = [] # 存储公约数的列表
for i in range(1, b+1):
if a % i == 0 and b % i == 0:
common_divisors.append(i)
return max(common_divisors)
# 示例
print(gcd(12, 18)) # 输出:6
print(gcd(35, 49)) # 输出:7
```
阅读全文