当我们需要求两个数的最大公约数时,可以使用穷举法来解决。
下面是详细攻略:
穷举法求最大公约数
- 首先,将两个数中的小数赋值为变量 a,大数赋值为变量 b。这样可以确保在后面的运算中,a 存放的是更小的数,而 b 存放的是更大的数。
if num1 < num2:
num1, num2 = num2, num1
a = num2
b = num1
- 使用 while 循环计算 a 和 b 的余数,直到余数为 0,则 b 即为最大公约数。
while b:
a, b = b, a % b
return a
- 最后,在函数中返回最大公约数。
下面是完整代码示例:
def gcd(num1, num2):
"""
使用穷举法求最大公约数
"""
if num1 < num2:
num1, num2 = num2, num1
a = num2
b = num1
while b:
a, b = b, a % b
return a
示例
假设我们需要求 15 和 20 的最大公约数,我们可以调用上面的函数来解决:
print(gcd(15, 20))
运行结果为:
5
再举一个例子,假设我们需要求 36 和 48 的最大公约数,我们同样可以调用上面的函数来解决:
print(gcd(36, 48))
运行结果为:
12
以上就是使用穷举法求两个数的最大公约数的攻略和示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python使用穷举法求两个数的最大公约数问题 - Python技术站