一、最大公约数
1、辗转相除法
辗转相除法又叫欧几里得算法,是欧几里得最先提出来的.辗转相除法的实现,是基于下面的原理(在这里用(a,b)表示a和b的最大公因数):
(a,b)=(a,ka+b),因为如果p可以整除a,也可以整除b,那么p必然可以整除ak+b,即a*k/p+b/p,所以我们可以用两数中较大的数取余较小的数(余数),一直到出现0为止,不为0 的数就是最大公约数,例如:
(27,45)=(27,18)=(9,18)=(9,0)=9;
代码实例:
2、枚举;
二、最小公倍数
由于两个数的乘积等于这两个数的最大公约数与最小公倍数的积。即(a,b)×[a,b]=a×b。所以,求两个数的最小公倍数,就可以先求出它们的最大公约数,然后用上述公式求出它们的最小公倍数。
求最大公约数及最小公倍数
最新推荐文章于 2021-06-25 07:56:18 发布