用于两个以上(或数组)数的GCD的Python程序

三个或三个以上数字的GCD等于所有数字共有的素数因子的乘积,但也可以通过重复计算成对数字的GCD来计算。

null
gcd(a, b, c) = gcd(a, gcd(b, c)) 
             = gcd(gcd(a, b), c) 
             = gcd(gcd(a, c), b)

# GCD of more than two (or array) numbers
# This function implements the Euclidian
# algorithm to find H.C.F. of two number
def find_gcd(x, y):
while (y):
x, y = y, x % y
return x
l = [ 2 , 4 , 6 , 8 , 16 ]
num1 = l[ 0 ]
num2 = l[ 1 ]
gcd = find_gcd(num1,num2)
for i in range ( 2 , len (l)):
gcd = find_gcd(gcd,l[i])
print (gcd)
# Code contributed by Mohit Gupta_OMG


输出:

2

请参阅完整的文章 两个以上(或数组)数的GCD 更多细节!

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享