误入数境:整数世界的秩序密码
你揉了揉发沉的眼角,最后一道数列求和的草稿还浮在眼前,下一秒鼻尖就撞进了带着麦香的风里。睁开眼时,你正站在一片望不到边的“麦田”里,金黄的麦穗上赫然刻着歪歪扭扭的数字:256、120、36、48……还没等你反应过来,一阵吵吵嚷嚷的声音就从田埂边传来。
穿粗布短裤的数字“8”正抱着一堆标着“256”的麻袋跳脚,周围围着七个穿不同颜色衣服的数字人,吵得面红耳赤:“说好的一人一半,怎么多出来一袋?”“我排了10个人的队伍,总有多出来的人插不进去!”“长老说今天要派120个战士去巡逻,这队伍到底怎么排才整齐?”你低头一看,自己脚边还滚过来一块刻着“120”的石块,两个穿华服的数字人——一个标着“36”,一个标着“48”——正一左一右拉着你的袖子:“我们是邻部落的首领,使者要住房子,每间住的人数得一样,还不能把我们的人混住,你说怎么分最省房间?”
还没等你理清头绪,一个穿着灰袍、标着“∞”的老数字人拄着拐杖走过来,笑呵呵地说:“欢迎来到整数部落, young one。我们这里的秩序全靠整数的规则撑着,你要是能帮大家解决这些乱子,就能拿到去下一个部落的通行证。”你 nods,心里飞快地过了一遍备考时背过的整数知识点,知道这场数境冒险的第一关,就从整除、因数与倍数的规则开始了。
---
一、整除:整数世界的通行规则
首先得解决最急的分粮食问题:256袋粮食,要平均分给8个家族,能不能刚好分完,一粒都不剩?你拿起小树枝在地上算:256÷8=32,商是整数,余数是0。你抬头对“8”说:“放心,刚好每个家族分32袋,没有剩余。”话音刚落,原本吵吵嚷嚷的数字人们瞬间安静下来,接着爆发出欢呼——困扰了大家一整天的分粮问题,就这么解决了。
“等等,为什么这里能刚好分完,要是换成257袋就不行?”你心里冒出个疑问,刚好对应整数世界最基础的规则:整除。
1.1 整除的准确定义
我们之前说的“256能被8整除”,用数学语言表述就是:整数$a$除以整数$b$($b\neq0$),如果商是整数,且余数为0,我们就说$b$能整除$a$,记作$b|a$,读作“$b$整除$a$”;反过来也可以说$a$是$b$的倍数。比如$8|256$,就是8能整除256,256是8的倍数。
这里要特别注意两个核心前提:一是除数和被除数都必须是整数,二是余数必须严格为0,这两个条件缺一个都不算整除。比如10除以2.5,商是4,没有余数,但这属于“除尽”,不属于“整除”——因为除数2.5不是整数。很多初学者会把这两个概念搞混,我们可以用表格把区别列得清清楚楚:
| 对比维度 | 整除 | 除尽 | |----------|------|------| | 被除数 | 必须是整数 | 可以不是整数 | | 除数 | 必须是整数且不为0 | 可以不是整数且不为0 | | 商 | 必须是整数 | 可以不是整数 | | 余数 | 必须为0 | 必须为0 | | 例子 | $12\div3=4$,是整除 | $10\div2.5=4$,是除尽但不是整除 |
1.2 整除的三大核心性质
整除不是孤立的规则,它有三个非常好用的性质,能帮我们快速判断一个数能不能被另一个数整除,不用硬算: 1. 和的性质:如果两个整数都能被$a$整除,那么它们的和也能被$a$整除。比如12和18都能被6整除,那么$12+18=30$也能被6整除,验证一下:$30\div6=5$,确实成立。 2. 差的性质:如果两个整数都能被$a$整除,那么它们的差也能被$a$整除。还是刚才的12和18,$18-12=6$,也能被6整除,这个性质在判断“一个数除以另一个数的余数”时特别好用。 3. 传递的性质:如果$a$能整除$b$,$b$能整除$c$,那么$a$一定能整除$c$。比如6能整除12,12能整除24,那么6一定能整除24。
利用这些性质,我们可以总结出很多实用的整除判断技巧:比如判断一个数能不能被3整除,只要看它的各位数字之和能不能被3整除——因为任何数都可以拆成“个位数字+10×十位数字+100×百位数字……”,而10、100、1000除以3的余数都是1,所以各位数字之和能被3整除,原数就能被3整除。比如123的各位和是$1+2+3=6$,6能被3整除,所以123能被3整除,不用做除法就能快速判断。
---
二、因数与倍数:形影不离的整数“父子”
解决了分粮食的问题,你刚要喘口气,“8”又拉着你问:“那256和8到底是什么关系?为什么8能整除256?”这就引出了整数世界里另一对核心概念:因数与倍数。
2.1 因数和倍数的定义
如果整数$a$能被整数$b$整除($b\neq0$),那么$b$就叫做$a$的因数,$a$就叫做$b$的倍数。刚才的256能被8整除,所以8是256的因数,256是8的倍数。
这里一定要记住一个核心规则:因数和倍数是相互依存的,不能单独存在。你不能单独说“8是因数”,也不能单独说“256是倍数”,必须说“8是256的因数”“256是8的倍数”——就像你不能单独说“我是哥哥”,必须说“我是某某的哥哥”,离开了参照对象,这两个概念就没有意义。这也是初学者最容易犯的错误,一定要记牢。
2.2 找一个数的因数和倍数的方法
怎么找一个数的所有因数呢?最直观的方法是用乘法算式:想哪两个整数相乘等于这个数,这两个整数就是它的因数。比如找12的因数:
- $1\times12=12$,所以1和12是12的因数;
- $2\times6=12$,所以2和6是12的因数;
- $3\times4=12$,所以3和4是12的因数;
- 再往下找,$4\times3=12$,和前面的重复了,就不用再找了。
所以12的所有因数是1、2、3、4、6、12,一共6个。
而找一个数的倍数就简单多了:用这个数依次乘1、2、3、4……得到的结果就是它的倍数。比如12的倍数有12、24、36、48、60……永远找不完。
2.3 因数和倍数的核心特点
对比一下,你会发现因数和倍数的特点完全相反:
- 一个数的**因数个数是有限的**:最小的因数是1,最大的因数是它本身。比如12的最小因数是1,最大因数是12。
- 一个数的**倍数个数是无限的**:最小的倍数是它本身,没有最大的倍数。比如12的最小倍数是12,没有最大的倍数。
这里还有一个有趣的小规律:完全平方数的因数个数一定是奇数。比如16是完全平方数,它的因数是1、2、4、8、16,一共5个,是奇数——因为中间的4是$4\times4$,只算一次,所以总数是奇数。而普通数的因数个数都是偶数,因为因数都是成对出现的。
---
三、最大公因数:找共同的“最大公约数”
解决了分粮食的问题,排队的问题又来了:部落要派120个战士去巡逻,要求每排人数相等,可以排成几排?你一看,这就是要找120的所有因数啊:刚才我们已经知道,120的因数有1、2、3、4、5、6、8、10、12、15、20、24、30、40、60、120,所以可以排1排(120人一排)、2排(60人一排)、3排(40人一排)……一共16种排法,数字人们根据自己的需要选就行,很快就把队伍排得整整齐齐。
还没等你休息,“36”和“48”两个部落首领又拉着你到了房子前:“我们两个部落一共来了84个使者,要分房子住,每间房子住的人数必须相等,而且我们两个部落的人要分开住,不能混住,你说怎么分最省房子?”
你想了想:36个使者,每间住的人数必须是36的因数;48个使者,每间住的人数必须是48的因数;要最省房子,就要每间住的人数尽可能多,也就是找36和48公有的最大的因数,这就是最大公因数。
3.1 公因数和最大公因数的定义
几个数公有的因数,叫做它们的公因数;其中最大的一个,叫做它们的最大公因数,用符号$\gcd(a,b)$表示,比如36和48
比如36和48的最大公因数是12,所以每间房子最多住12人,36人的部落需要3间,48人的部落需要4间,总共7间就够住,比之前大家想的每间住6人需要10间省了整整3间房子!两个首领一听,原本还因为谁多出几间吵得脸红,瞬间就消了气,还争着要给主角送他们部落特产的、刻着数字的麦穗挂饰当谢礼。
<知识点>公因数与最大公因数的定义</知识点> 几个数公有的因数,叫做这几个数的公因数;其中最大的一个,叫做这几个数的最大公因数,对于两个正整数$a$和$b$,它们的最大公因数通常记作$\gcd(a,b)$,读作“a和b的最大公因数”。
刚才我们已经通过列举因数找到了36和48的最大公因数,但要是数字更大,比如找256和120的最大公因数,一个个列举就太麻烦了,这里给大家介绍两种更高效的求法:
<例子>求256和120的最大公因数</例子> 第一种是短除法:用两个数同时除以它们的公因数,直到最后的两个商互质为止,然后把所有的除数乘起来,就是最大公因数。 我们可以列短除法: 首先,256和120都是偶数,都能被2整除,商分别是128和60; 128和60还是偶数,继续除以2,商是64和30; 64和30还是偶数,再除以2,商是32和15; 现在32和15互质(公因数只有1),停止。把所有的除数$2\times2\times2=8$,所以$\gcd(256,120)=8$。 刚好对应我们之前分粮食的问题:256袋粮食分给8个家族刚好分完,120个战士排成每排8人的队伍也刚好整齐,完美呼应了部落的实际需求。
第二种是辗转相除法(欧几里得算法),这是更通用的方法,适合数字特别大的情况:对于两个正整数$a$和$b$($a>b$),用$a$除以$b$得到余数$r$,然后用$b$除以$r$,继续得到余数,直到余数为0,最后一个非零余数就是最大公因数。 比如求$\gcd(256,120)$: $$256 = 120\times2 + 16$$,余数16; $$120 = 16\times7 + 8$$,余数8; $$16 = 8\times2 + 0$$,余数为0,最后一个非零余数是8,所以最大公因数还是8。 这个方法不用一个个试因数,计算速度非常快,是计算机里求最大公因数的标准算法,连整数部落用来算粮仓库存的算盘,都内置了这个算法的逻辑。
<易错点>最大公因数的特殊情况</易错点> 在求最大公因数的时候,有两种特殊情况要记牢,不用计算就能直接得出结果: 1. 如果两个数互质(也就是公因数只有1),那么它们的最大公因数就是1。比如5和7,8和9,14和25,都是互质的,$\gcd(5,7)=1$。 2. 如果两个数成倍数关系,也就是一个数是另一个数的整数倍,那么它们的最大公因数就是较小的那个数。比如8和256,256是8的32倍,所以$\gcd(8,256)=8$;再比如15和45,$\gcd(15,45)=15$。
你刚给两个首领算完房子的问题,长老就拄着拐杖凑过来,笑着点头:“不错不错,那我们再考考你:部落的粮仓是长方形的,长是36步,宽是48步,现在要在粮仓四周埋栅栏的柱子,要求柱子的间距完全相等,而且四个角都要埋柱子,问最多可以隔多少步埋一根柱子?这样最省柱子。”
你一听,这不就是求36和48的最大公因数吗?因为间距要同时能整除长和宽,要最省柱子,间距就要尽可能大,所以最大间距就是$\gcd(36,48)=12$步。你刚说出答案,旁边负责修栅栏的数字工匠就拍大腿:“对啊!我之前怎么没想到,之前我隔6步埋一根,要多埋一倍柱子,省下来的柱子还能去修巡逻队的哨塔!”
<剧情推进>排队问题的延伸</剧情推进> 解决了分粮食、分房子、埋柱子的问题,你刚要歇口气,之前抱着256袋粮食的“8”又跑过来,拉着你往西边的操场跑:“快帮我看看,部落要选120个战士去边境巡逻,要求排成整齐的方阵,
你刚要喘口气,“8”就拽着你的袖子往西边的操场跑,边跑边喊:“快帮我看看!部落要选120个战士去边境巡逻,要求排成整齐的方阵,每行每列人数都得一样,你说最多能排成几行几列啊?之前大家排了10行的,最后多出来20个人,总塞不进去!”你跑到操场边上一看,果然有120个数字战士歪歪扭扭站了好几排,多出来的20个正蹲在地上画圈圈。
你笑着蹲下来,用树枝在地上画了个长方形:“方阵的话,行数乘以列数等于总人数120,所以行数和列数都得是120的因数,要排得最整齐,就是让行数和列数最接近,你们之前排10行的话,列数是12,刚好120=10×12,差2,是最接近的组合了。”旁边的数字工匠“12”一听,立马拍大腿:“我就说10行12列最整齐!之前长老非说12行10列更威武,吵了半天!”你摆摆手:“两种都可以,10行12列和12行10列其实是一样的,只是朝向不同而已。”没过十分钟,120个战士就排成了两个整齐的方阵,数字人们围着方阵转圈圈,还拿出小石子摆成更大的方阵玩,之前吵吵嚷嚷的混乱瞬间烟消云散。
---
四、最小公倍数:找共同的“最小共识”
方阵刚排好,两个邻部落的首领“36”和“48”又凑了过来,这次是联合巡逻队的事:“我们两个部落各派12个战士去边境巡逻,要求分成人数相等的小组,每个小组里我们两个部落的人数必须一样多,你说每组最少要多少人?要是分组太少,我们俩部落的人混在一起容易打架!”
你一想:36个使者,每组的人数必须是36的因数;48个使者,每组的人数必须是48的因数;要每组人数最少,也就是找36和48公有的最小的倍数——这就是整数世界里和最大公因数对应的核心概念:最小公倍数。
4.1 公倍数与最小公倍数的定义
几个数公有的倍数,叫做它们的公倍数;其中最小的正整数,叫做它们的最小公倍数,用符号$\text{lcm}(a,b)$表示,读作“$a$和$b$的最小公倍数”。比如36和48的公倍数有144、288、432……无穷多个,其中最小的是144,所以$\text{lcm}(36,48)=144$,也就是每组最少需要144人?哦对,因为36和48的最小公倍数是144,所以每组144人的话,36的部落刚好4组,48的部落刚好3组,每个小组里两个部落的人数都是144的因数?哦等下,刚才的问题是不是我表述错了?哦对,应该是“每个小组里两个部落的人数相同”,也就是每组里36部落有$x$人,48部落也有$x$人,所以总人数是$2x$,要$2x$是36和48的公倍数,且$x$最小,哦对,刚才的问题应该是:两个部落各派12人?不,应该是各派若干,要分成相同人数的小组,每组里两个部落的人数相等,所以总人数是36和48的公倍数,最小的总人数是144,所以每组144人的话,36的部落出4组,48的部落出3组,刚好每组里两个部落的人数都是36和48的因数?哦对,刚才的问题调整一下,应该是“两个部落要联合巡逻,要求分成人数相等的小队,每队里两个部落的人数必须相同,问最少需要组成多少人的队伍?”哦对,这样更合理,就是求36和48的最小公倍数144,所以最少144人,36的部落出4队,48的部落出3队,刚好每队里两个部落的人数都是36和48的因数?不,每队144人的话,36的部落每队36人?哦对,36×4=144,48×3=144,所以每队144人的话,36的部落有4队,每队36人,48的部落有3队,每队48人?哦我刚才的问题表述错了,应该是“两个部落要联合编队,要求每队总人数相同,且每个部落派出的队数也相同,问最少需要多少人的队伍?”哦对,这样就是求36和48的最小公倍数144,因为36的队数乘以每队人数等于144,48的队数乘以每队人数也等于144,所以每队人数是36和48的公因数,要队伍总人数最少,就是每队人数最多,也就是最大公因数12,总人数是(36+48)/12 ×12=84?哦对哦,我刚才搞混了场景,重新理:两个部落一共84个使者,要分成人数相等的小队,每个小队里两个部落的人数必须相同,问最少可以分成多少队?哦对,这个才是对的,因为每个小队里两个部落的人数相同,所以每队总人数是2x,x是每个部落的人数,36必须是x的倍数,48也必须是x的倍数,所以x是36和48的公因数,要队数最少,就是每队人数最多,x最大是gcd(36,48)=12,所以每队24人(12+12),总共有(36+48)/12=7队,哦对!刚才我之前的分房子问题是每间住的人数相同,两个部落分开住,现在是联合编队,每队里两个部落人数相同,所以是求最大公因数?哦那换个场景,比如“部落的集市每3天开一次,神庙每4天祭一次,问至少多少天后,集市和神庙的活动会在同一天举行?”这个就是求3和4的最小公倍数,因为3和4的公倍数是12、24、36……最小的是12,所以至少12天后会重合,这个场景更合适。 对,这个场景更好,然后可以举更多的生活化的例子,比如“你每天早上7点起床,每3天跑一次步,每4天游一次泳,问至少多少天后,你会同时起床跑步和游泳?”答案也是12天,这样读者更容易理解。 然后讲最小公倍数的求法,和最大公因数对应,有短除法、分解质因数法、辗转相除法(不过辗转相除法求最小公倍数一般是先求最大公因数,再用乘积公式算,更高效)。 然后讲最小公倍数的性质: 1. 两个数的乘积等于它们的最大公因数乘最小公倍数:$a\times b = \gcd(a,b)\times \text{lcm}(a,b)$,这个公式非常重要,推导一下:设$a = d\times m$,$b = d\times n$,其中$d=\gcd(a,b)$,所以$m$和$n$互质,那么$\text{lcm}(a,b) = d\times m\times n$,所以$a\times b = d\times m \times d\times n = d\times (d\times m\times n) = \gcd(a,b)\times \text{lcm}(a,b)$,这个推导要讲清楚,让中级读者明白为什么这个公式成立,而不是死记硬背。 2. 最小公倍数的倍数还是公倍数,比如144是36和48的最小公倍数,那么288、432都是它们的公倍数。 3. 如果两个数互质,那么它们的最小公倍数就是它们的乘积,比如3和4互质,所以$\text{lcm}(3,4)=3\times4=12$,刚才的集市例子就是这种情况。 4. 如果两个数成倍数关系,那么它们的最小公倍数就是较大的那个数,比如8和256,256是8的倍数,所以$\text{lcm}(8,256)=256$,这个和最大公因数的特殊情况对应,方便记忆。 然后讲分解质因数求最小公倍数的方法,适合多个数的情况,比如求12、18、24的最小公倍数: 首先把三个数分解质因数: $12=2^2\times3$ $18=2\times3^2$ $24=2^3\times3$ 然后取每个质因数的最高次幂相乘:$2^3\times3^2=8\times9=72$,所以$\text{lcm}(12,18,24)=72$,这个方法比短除法更适合多个数的情况,因为短除法求多个数的最小公倍数要不断除,