中文名:最大公约数

外文名:Greatest Common Divisor

 

如果数a能被数b整数,a就叫做b的倍数,b就叫做a的约数。

几个整数中公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。

 

求法:

质因数分解法:把每个数分别分解质因数,再把各数中的全部公有质因数提取出来连乘,所得的积就是这几个数的最大公约数。

辗转相除法:辗转相除法是求两个自然数的最大公约数的一种方法,也叫欧几里得算法。

原理:

最大公约数英文缩写为:GCD

gcd(a,b) = gcd(b,a mod b)  (设a>b)

 

Python中的算法:

def GreatCommonDivisor(a,b):

  if a>b:

    a,b = b, a

  r = 1

  while  r !=0:

    r = a % b

    a = b

    b = r

  return a