您的位置:首页 > 其它

最大公约数与最小公倍数

2015-04-21 18:29 148 查看
最大公约数与最小公倍数

如果数a能被数b整除,a就叫做b的倍数,b就叫做作a的约数.约数和倍数都表示一个数与另一个数的关系,不能单独存在.如只能说16是某数的倍数,2是某数的约数,而不能孤立地说16是倍数,2是约数.

 倍”与“倍数”是不同的两个概念,“倍”是指两个数相除的商,它可以是整数、小数或者分数.“倍数”只是在数的整除范围内,相对于“约数”而言的一个数字概念,表示的是能被某一个自然数整除的数,它必须是一个自然数.

几个自然数公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数.例如12,16的公约数有1,2,4,其中最大的一个是4,4是12与16的最大公约数,一般记为(12,16)=4.12,15,18的最大公约数是3,记为(12,15,18)=3.

常用的求最大公约数的方法是分解质因数法和短除法.

 分解质因数法,把每个数分别分解质因数,再把各数中的全部公有质因数提取出来连乘,所得的积就是这几个数的最大公约数.例如,求24和60的最大公约数.24=2×2×2×3,60=2×2×3×5,24与60的全部公有的质因数是2,2和3,它们的积是2×2×3=12,所以(24,60)=12.

  短除法,先用这几个数的公约数连续去除,一直除到所有的商互质为止,然后把所有的除数连乘起来,所得的积就是这几数的最大公约数.例如,求24,48,60的最大的公约数.

(24,48,60)=2×3×2=12

几个自然数公有的倍数,叫做这几个数的公倍数,其中最小的一个,叫做这几个数的最小公倍数.例如4的倍数有4,8,12,16,……,6的倍数有6,12,18,24,4和6的公倍数有12,24,……,其中最小的是12,一般记为[4,6]=12.12,15,18的最小公倍数是180,记为[12,15,18]=180.

  常用的求最小公倍数的方法是分解质因数法和短除法.

  分解质因数法,首先把这几个数先分别分解质因数,再把各数中的全部公有的质因数和独有的质因数提取出来连乘,所得的积就是这几个数的最小公倍数.例如求6和15的最小公倍数.6=2×3,15=3×5,6和15的全部公有的质因数是3,6独有质因数是2,15独有质因数是5,2×3×5=30,30里面包含6的全部质因数2和3,还包含了15的全部质因数3和5,且30是6和15的公倍数中最小的一个,所以[6,15]=30.

  短除法,先用这几个数的公约数去除每一个数,再用部分数的公约数去除,并把不能整除的数移下来,一直除到所得的商中每两个数都是互质数为止,然后把所有的除数和商连乘起来,所得的积就是这几个数的最小公倍数.例如求12,15,18的最小公倍数

 [12,15,18]=3×2×2×5×3=180

  在解有关最大公约数、最小公倍数的问题时,常用到以下结论:

  (1)如果两个数是互质数,那么它们的最大公约数是1,最小公倍数是这两个数的乘积.

  例如8与9,它们是互质数,所以(8,9)=1,[8,9] =72.

  (2)如果两个数中,较大数是较小数的倍数,那么较小数就是这两个数的最大公约数,较大数就是这两个数的最小公倍数.

  例如18与3,18÷3=6,所以(18,3)=3,[18,3]=18.

  (3)两个数分别除以它们的最大公约数,所得的商是互质数.

  例如8和14分别除以它们的最大公约数2,所得的商分别为4和7,那么4和7是互质数.

  (4)两个数的最大公约数与它们的最小公倍数的乘积等于这两个数的乘积.

  例如12和16,(12,16)=4,[12,16]=48,有4×48=12×16.

  下面讨论有关最大公约数、最小公倍数的问题.

最大公公约数

int gcd(int a,int b)
{ return b?gcd(b,a%b):a;
}

最小公倍数

int lcm(int n,int m) {

return n / gcd(n,m) * m;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: