#欧几里得求最大公约数
#!/usr/bin/env python
#coding -*- utf:8 -*-
#iteration
def gcd(a,b):
if b==0:
return a
else:
return gcd(b, remainder(a, b))
#此方法仅仅书用于a和b都为正数
def gcd_1(a,b):
while(b>0):
rem = remainder(a,b)
a = b
b = rem
return a
def remainder(x,y):
return x%y
if __name__=='__main__':
a = int(input("请输入一个数字:"))
b = int(input("请输入另外一个数字:"))
print("最大公约数:",gcd(a,b))
欧几里得求最大公约数--JAVA递归实现
欧几里得算法求最大公约数算法思想: 求p和q的最大公约数,如果q=0,最大公约数就是p:否则,p除以q余数为r,p和q的最大公约数即q和r的最大公约数. java实现代码: public class ...
gcd模板(欧几里得与扩展欧几里得、拓展欧几里得求逆元)
gcd(欧几里得算法辗转相除法): gcd ( a , b )= d : 即 d = gcd ( a , b ) = gcd ( b , a mod b ):以此式进行递归即可. 之前一直愚蠢地以为辗 ...
hdu_1