欧几里得算法

先给出欧几里得算法的定理:

给定两个整数a和b,设,则a和b的最大公因子等于b和的最大公因子。即 其中, 表示用a除以b所得的余数r。

下面给出欧几里得算法的递归实现:

1
2
3
4
5
6
7
8
9
a=int(input("输入a"))
b=int(input("输入b"))
def gcd(a,b):
if(b==0):
return a
else:
return gcd(b,a%b)

print(gcd(a,b))

欧几里得算法的迭代实现:

1
2
3
4
5
6
7
8
9
10
a=int(input("输入a"))
b=int(input("输入b"))
def gcd(a,b):
if(b==0):
return a
while(a>0):
c=a%b;a=b;b=c;
return a

print(gcd(a,b))

欧几里得算法
http://example.com/2022/09/06/欧几里得算法/
作者
Jay
发布于
2022年9月6日
许可协议