最大公约数与最小公倍数
Tag:学习
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://xmler.blogbus.com/logs/25606.html
最大公约数与最小公倍数
发言人:系统管理员 发布时间:2003-5-16 12:01:15
学校来源: 8211远程教育网 阅读次数:111 信息来源: 未知
一、引例
甲、乙、丙三个学生定期<personname w:st="on" productid="向某">向某</personname>老师求教,甲每4天去一次,乙每6天去一次,丙每9天去一次。如果这一次他们三人是<chsdate w:st="on" isrocdate="False" islunardate="False" day="23" month="3" year="2008"><span lang="EN-US">3</span>月<span lang="EN-US">23</span>日</chsdate>都在这个老师家见面,那么下一次三人都在这个老师家见面的时间是几月几日?
二、基础知识
如果数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。
几 个自然数公有的倍数,叫做这几个数的公倍数,其中最小的一个,叫做这几个数的最小的一个,叫做这几个数的最小公倍数。例如: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。
1、 分解质因数法
把每个数分别分解质因数,再把各数中的全部公有质因数提取出来连乘,所得的积就是
这几个数的最大公约数。例如:求24和60的最大公约数,先分解质因数,得24=2×2×3,60=2×2×3×5,24与60的全部公有的质因数是2、2、3,它们的积是2×2×3=12,
所以,(24、60)=12。
把 几个数先分别分解质因数,再把各数中的全部公有的质因数和独有的质因数提取出来连乘,所得的积就是这几个数的最小公倍数。例如:求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。
2、 短除法
短除法求最大约数,先用这几个数的公约数连续去除,一直除到所有的商互质为止,然后把所有的除数连乘起来,所得的积就是这几个数的最大公约数。例如,求24、48、60的最大公约数。
(24、48、60)=2×3×2=12
短除法求最小公倍数,先用这几个数的公约数去除每一个数,再用部分数的公约数去除,并把不能整除的数移下来,一直除到所有的商中每两个数都是互质的为止,然后把所有的除数和商连乘起来,所得的积就是这几个数的最小公倍数,例如,求12、15、18的最小公倍数。
(12、15、18)=3×2×2×5×3=180
无论是短除法,还是分解质因数法,在质因数较大时,都会觉得困难。这时就需要用新的方法。
3、 辗转相除法
先看一个例子:从一张长<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="2002" unitname="毫米"><span lang="EN-US">2002</span>毫米</chmetcnv>,宽<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="847" unitname="毫米"><span lang="EN-US">847</span>毫米</chmetcnv>的长方形纸片上,剪下一个边长尽可能
大的正方形,如果剩下的部分不是正方形,那么在剩下的纸片上再剪下一个边长尽可能大的正方形,按照上面的过程不断地重复,最后剪得的正方形的边长是___________毫米。
解:剪的过程如图所示
第一, 二次剪下848×847平方毫米的正方形。
第二, 三次剪下边长<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="308" unitname="毫米"><span lang="EN-US">308</span>毫米</chmetcnv>的正方形
第五次剪下边长<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="231" unitname="毫米"><span lang="EN-US">231</span>毫米</chmetcnv>的正方形。
第六、七、八次剪下边长<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="77" unitname="毫米"><span lang="EN-US">77</span>毫米</chmetcnv>的正方形。
以上的解题过程,实际上给出了求最大公约数的另一个办法--辗转相除法。以上过程可用算式表示如下:
2002=847×2+308
847=308×2+231
308=231×2+77
231=77×3
由 以上算式可以看出,这种方法就是用大数除以小数再用上次运算中的除数除以余数,如此反复除,直到余数为零。最后一个除数就是两数的最大公约数。这是因为: 两个数的最大公约数,同时是两个数的约数,也就是余数的约数。拿此题来讲,2002和847的公约数,也就是847和308的公约数。由于231是77的 倍数,所以它们的最大公约数就是77,即2002与847的最大公约数。
辗转相除法的竖式格式如下:
在解有关最大公约数、最小公倍数的问题时,常用到以下结论:
(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,即(12,16)×[12,16]=12×16。
三、例题分析
例1:引例。
分析:甲第4天,第8天,第12天,……去看望老师。乙第6天,第12天,第18天,……
去看望老师。丙第9天,第18天,第27天,……去看望老师。下一次三人<personname w:st="on" productid="都在">都在</personname>老师家见面的时间是第[4,6,9]=36天。
解:∵[4,6,9]=36
从<chsdate w:st="on" isrocdate="False" islunardate="False" day="23" month="3" year="2008"><span lang="EN-US">3</span>月<span lang="EN-US">23</span>日起</chsdate>,再过36天应是<chsdate w:st="on" isrocdate="False" islunardate="False" day="28" month="4" year="2008"><span lang="EN-US">4</span>月<span lang="EN-US">28</span>日</chsdate>
∴下一次三人在老师家见面的时间是<chsdate w:st="on" isrocdate="False" islunardate="False" day="28" month="4" year="2008"><span lang="EN-US">4</span>月<span lang="EN-US">28</span>日</chsdate>。
例2:将长<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="200" unitname="厘米"><span lang="EN-US">200</span>厘米</chmetcnv>,宽<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="120" unitname="厘米"><span lang="EN-US">120</span>厘米</chmetcnv>,厚<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="40" unitname="厘米"><span lang="EN-US">40</span>厘米</chmetcnv>的长方体木料锯成同样大小的正方体木块,而没有剩余,共有多少种不同的锯法?当正方体的边长是多少时,锯成的小木块的体积最大,共有多少块?
分 析:由题意知,锯成的小正方体的边长应能整除200,120和40,也就是说,小正方体的边长是这三个数的公约数,得出的不同的公约数的个数就代表有多少 种不同的锯法。另外要求锯成的小木块的体积最大时的正方体的边长,只要使小正方体的边长为最大就行了,即求200、120和40的最大公约数。最后可求得 锯的块数。
(200,120,40)=40,40=2×2×2×5=23×5
40的约数个数为(3+1)×(1×1)=8
锯的块数为(200÷40)×(120÷40)×(40÷40)
=5×3×1=15
答:共有8种锯法,当正方体的边长是<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="40" unitname="厘米"><span lang="EN-US">40</span>厘米</chmetcnv>时,锯成的小木块的体积最大,共有15块。
例3:求1300到1400玻璃球数,使之分别按三个三个数,四个四个数,五个五个数,六个六个数,最后都差一个,改为七个七个数时,正好数完。
分 析:这个数必然是3、4、5、6的公倍数差1,而又是7的倍数。3,4,5,6的最小公倍数是60,因此这个数可表示为60k-1(K是自然数)。当K= 1时,60×1-1=59,被7除余3;当K=2时,60×2-1=119,被7整除。符合,三个三个数,四个四个数,五个五个数,六个六个数,最后都差 一个,见七个七个数,正好数完。但所求数要求在1300至1400之间,只要在119基础上,增加3,4,5,6,7的最小公倍数的整数倍就可得到所求的 数。
解:因为(3,4,5,6)=60,因此这个数可表示为60K-1(K是自然数),当K=2时,60×2-1=119,能被7整 除;又(3,4,5,6,7)=420,所以这个数可表示为119+<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="420" unitname="m">420m</chmetcnv>(m是自然数)。当m=3时,119+420×3=1359在1300至 1400之间。所以1359即为所求。
例4:两个数的最大公约数是15,最小公约数是360,且这两个数相差75,求这两个数。
分 析:根据最大公约数、最小公倍数的定义,360÷15=24,24是所求的两个数它们各自独有的不同的约数的乘积,并且它们的这两个约数必然互质,即用所 求的两个数的最大公约数分别除这两个数所得的商的积等于24。且24必是两个互质数的乘积。很容易得到24=1×24=3×8,1与24,3与8分别互 质,这样得到两组解:
15×1=15,15×24=360;
15×3=45,15×8=120;且
120-45=75,得到了问题的解。
解:因为360÷15=24,24=1×24=3×8
15×1=15,15×24=360;
15×3=45,15×8=120;
且120-45=75
所以这两个数分别为45,120。
例5:试用2,3,4,5,6,7六个数字自成两个三位数,使这两个三位数与540的最大公约数尽可能大?
分 析:因为540=22×33×5,而2,3,4,5,6,7中只有一个5,因此这六个数字组成的两个三位数中不会有公约数5,所以这两个三位数与540的 最大公约数只可能为22×33=108,再进行试验,108×2=216,216中1不是已知数字,108×3=324,还剩5,6,7三个数字,而 108×7=756,于是问题得到解决。
解:因为540=22×33×5,所以2,3,4,5,6,7这六个数组成的两位数与540的最大公约数只可能为22×33=108,经试验得到108×3=324,108×7=756,所以324,756即为所求。
例6:在<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="800" unitname="米"><span lang="EN-US">800</span>米</chmetcnv>的环岛上,每隔<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="50" unitname="米"><span lang="EN-US">50</span>米</chmetcnv>插一面彩旗,后来又增加了一些彩旗,就把彩旗的间隔缩短了,起点的彩旗不动,重新插完后发现,一共有4根彩旗没动,问现在的彩旗间隔多少米?
分 析:<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="800" unitname="米"><span lang="EN-US">800</span>米</chmetcnv>环岛每隔<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="50" unitname="米"><span lang="EN-US">50</span>米</chmetcnv>插一面彩旗,共插800÷50=16根,重新插完后,有4根没动,而这4根中的任意相邻的两根间的距离为50×(16÷4)= <chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="200" unitname="米">200<span lang="EN-US"><span lang="EN-US">米</span></span></chmetcnv>,重新插完后每相邻的两根彩旗间的距离与50的最小公倍数是200,并且这个距离一定小于<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="50" unitname="米"><span lang="EN-US">50</span>米</chmetcnv>,把符合这样条件的数求出来即为所求。
解: 因为800÷50=16根,重新插完后,在这4根不动的彩旗中,任意相邻的两根间的距离为50×(16÷4)=<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="200" unitname="米">200<span lang="EN-US"><span lang="EN-US">米</span></span></chmetcnv>,重新插后,任意相邻两根的距离为 a米,则[a,50]=200,且a<50。又因为200=23×52,50=2×52,根据最小公倍数的定义, a=23或23×5,即现在的彩旗间隔是<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="8" unitname="米"><span lang="EN-US">8</span>米</chmetcnv>或<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="40" unitname="米"><span lang="EN-US">40</span>米</chmetcnv>。
例7:求36963与59570的最大公约数。
∴(36963,59570)=37
解法2:上面的方法计算量很大。能否简化运算呢?
通过观察容易发现,36963有约数3×3。而59570没有质数3。59570有质因数2和5,而36963没有质因数2和5。所以可以从36963中分解出3×3,从59570中分解出2×5,再求其余部分的最大公约数。
36963=3×3×4107
59570=2×5×5957
∴(36963,59570)=37
由此可见,求最大公约数的几种方法并非是截然分开的。还可把它们结合起来使用。
求两分数分子的最小公倍数。
[36,99]=396
两分数的”最小公倍数”规定为化为同分母后,以分子的最小公倍数作为分子,相同分母作分母的分数。
由上面这个例子可以看出,最大公约数与最小公倍数的概念,如果必要也可以扩展到分数的范围。
四、练习
1、 求35,98,112的最大公约数与最小公倍数。
2、 求403,527,713的最小公倍数。
3、 求83613屯121824的最小公约数。
4、 老师将301个笔记本,215支铅笔和86块橡皮分给班里的同学,每个同学得到的笔记本、铅笔和橡皮的数量分别相等,那么每个同学各拿到多少?
5、 两个合数的积是5766,它们的最大公约数是31。那么,这两个数是多少?
6、 两个数的最大公约数是6,最小公倍数是504。如果其中一个数是42,那么另一个数是多少?
7、 其校全体学生列队。不论他们人数相等地分成2队、3队、4队、5队、6队、7队、8队、9队,都会多出1人,那么该校至少有多少名学生?
五、习题参考答案及思路分析
1、(35,98,112)=7
35=5×7; 98=7×4, 112=7×16
[35,98,112]=3920
2、403=13×31,527=17×31,713=23×31
[403、527、713]=13×17×23×31=157573
3、 易看出两数有公约数3。
83613=3×27817
121824=3×40608
用辗转相除法求出(27871,40608)=47
∴两数最大公约数为3×47=141。
4、(301,215,86)=43
所以全班共有43人。
每人拿到笔记本:301÷43=7(本)
每人拿到铅笔: 215÷43=5(支)
每人拿到橡皮: 86÷43=2(块)
5、5766÷31÷31=6
6=2×3
因两数都是合数,所以一个为2×31=62,另一个为3×31=93
6、504×6÷42=72
7、[2,3,4,5,6,7,8,9]=2520
∴全校至少有2520+1=2521名学生。
分享到:
相关推荐
用LabVIEW求最大公约数和最小公倍数。可以自行选择数据。
根据提供的文件信息,本文将详细解释如何使用C语言来实现最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)的计算。 ### 最大公约数(GCD) #### 概念 最大公约数是指两个...
python求最大公约数和最小公倍数 #辗转相除法 def gcd(a,b): #最大公约数函数,且最小公倍数 = 两个数相乘 / 最大公约数 if b == 0: return a else: return gcd(b,a%b) print("请输入两个数:") j,k = input()....
在VB语言中,求最大公约数和最小公倍数是常见的数学运算问题,本文将详细介绍VB语言中求最大公约数和最小公倍数的方法。 一、求最大公约数 在VB语言中,求最大公约数可以使用欧几里德算法,该算法的基本思想是:两...
python 函数的定义和使用 - 求最大公约数和最小公倍数 示例
JAVA实现求最大公约数和最小公倍数 根据欧几里得定律,最大公约数的递归算法
python 输入两个正整数计算最大公约数和最小公倍数 示例
### C语言程序:求最大公约数和最小公倍数 #### 知识点解析 ##### 一、背景介绍 在计算机编程中,特别是在基础算法学习过程中,计算两个或多个整数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数...
求最大公约数和最小公倍数的快速方法(Java语言实现)。
C语言求最大公约数和最小公倍数算法总结 C语言中求最大公约数和最小公倍数的各种算法总结,包括辗转相除法和穷举法等。辗转相除法又名欧几里德法,是一种经典的算法,用于计算两个正整数的最大公约数和最小公倍数。...
基于FPGA开发板的两位数求最大公约数和最小公倍数的设计,该设计中利用辗转相减法求得公约数与公倍数,且两个数的数值可通过按键修改,设计灵活可靠。该设计基于vivado开发,并带有testbench文件,方便仿真学习。
求最小公倍数通常可以利用最大公约数来计算,公式为:两数的乘积除以它们的最大公约数等于最小公倍数,即LCM(a, b) = |a * b| / GCD(a, b)。 在Java中,我们可以创建一个类`GcdAndLcm`,并在其中定义两个方法`gcd...
Java练习题:输入两个正整数m和n,求其最大公因数和最小公倍数
在计算机科学中,计算两个或多个整数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是基础的数学操作,经常用于解决各种问题,如简化比例、处理分数等。本文将详细讨论...
在编程领域,最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是基本的数论概念,它们广泛应用于算法设计、数据分析以及计算机科学的多个分支。VB(Visual Basic)是一种流行...
在编程领域,最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是两个基本的数论概念,它们在算法设计、数据结构和许多其他计算任务中都有应用。本文将详细介绍如何用C++语言...
c++求最大公因数和最小公倍数,利用最大公因数法求最小公倍数。