Python 更相减损术
时间: 2024-02-16 15:58:56 浏览: 124
Python 实现数组相减示例
Python的"更相减损术"是一种古老的算法,用于求解两个正整数的最大公约数(Greatest Common Divisor,简称GCD)。该算法的基本思想是通过不断相减两个数中较大的数,直到两个数相等为止,这个相等的数就是它们的最大公约数。
以下是Python实现更相减损术的示例代码:
```python
def gcd(a, b):
while a != b:
if a > b:
a = a - b
else:
b = b - a
return a
# 示例用法
num1 = 36
num2 = 24
result = gcd(num1, num2)
print("最大公约数为:", result)
```
在上述代码中,我们定义了一个名为`gcd`的函数,接受两个参数`a`和`b`,分别表示要求解最大公约数的两个正整数。通过不断相减较大的数,直到两个数相等为止,最后返回这个相等的数作为最大公约数。
需要注意的是,更相减损术在某些情况下可能会导致较多的迭代次数,因此在实际应用中可能不太高效。在Python中,我们通常使用更高效的欧几里得算法(辗转相除法)来求解最大公约数,可以使用`math`模块中的`gcd`函数来实现。
阅读全文