初中数学-整数整除判定法全解:从 2 到 19 的方法、依据与证明

整数整除判定法全解:从 2 到 19 的方法、依据与证明

整除判定看似是一堆零散口诀,但本质上都来自同一个东西:十进制下的模运算。只要理解同余,就能自己推导出各种规则,而不是死记硬背。

本文系统整理从 2 到 19 的整除判定方法,逐个给出:

  • 判定方法;
  • 数学依据;
  • 证明;
  • 必要时给出例子。

一、统一原理:一切从同余开始

设一个十进制整数为:

N=∑di10i N=\sum d_i10^i N=∑di10i

其中 did_idi 是各位数字。

要判断 m∣Nm\mid Nm∣N,就是判断:

N≡0(modm) N\equiv 0\pmod m N≡0(modm)

因为十进制中 10k10^k10k 对不同的 mmm 有不同的余数,所以会产生不同的快速判定法。

常用的有五种工具:

1. 末几位法

如果:

10k≡0(modm) 10^k\equiv 0\pmod m 10k≡0(modm)

则 NNN 只看末 kkk 位即可。

例如:

  • 10≡0(mod2)10\equiv0\pmod210≡0(mod2),所以 2 看末一位;
  • 100≡0(mod4)100\equiv0\pmod4100≡0(mod4),所以 4 看末两位;
  • 1000≡0(mod8)1000\equiv0\pmod81000≡0(mod8),所以 8 看末三位。

2. 数字和法

如果:

10≡1(modm) 10\equiv1\pmod m 10≡1(modm)

则:

N=∑di10i≡∑di(modm) N=\sum d_i10^i\equiv\sum d_i\pmod m N=∑di10i≡∑di(modm)

所以看各位数字和。

例如 3、9。

3. 递推法

设:

N=10a+b N=10a+b N=10a+b

其中 bbb 是末位数字,aaa 是去掉末位后的数。

若找到 ccc,使得:

10c≡1(modm) 10c\equiv1\pmod m 10c≡1(modm)

令:

T=a+cb T=a+cb T=a+cb

则:

10T=10a+10cb≡10a+b=N(modm) 10T=10a+10cb\equiv10a+b=N\pmod m 10T=10a+10cb≡10a+b=N(modm)

所以:

N≡10T(modm) N\equiv10T\pmod m N≡10T(modm)

因为通常 gcd⁡(10,m)=1\gcd(10,m)=1gcd(10,m)=1,所以:

T≡0(modm)  ⟺  N≡0(modm) T\equiv0\pmod m\iff N\equiv0\pmod m T≡0(modm)⟺N≡0(modm)

这就是"去掉末位,加或减末位若干倍"的来源。

这里 gcd⁡(10,m)=1\gcd(10,m)=1gcd(10,m)=1 是关键一步:只有 10 在模 mmm 下可逆,才能从 N≡10T(modm)N\equiv10T\pmod mN≡10T(modm) 反推出 T≡0  ⟺  N≡0T\equiv0\iff N\equiv0T≡0⟺N≡0。如果 gcd⁡(10,m)>1\gcd(10,m)>1gcd(10,m)>1,10 没有模 mmm 的逆元,这条等价链就不成立。

4. 分组交替法

如果:

10p≡−1(modm) 10^p\equiv-1\pmod m 10p≡−1(modm)

则从右往左每 ppp 位分成一组,交错加减:

最低组−次低组+第三组−⋯ \text{最低组}-\text{次低组}+\text{第三组}-\cdots 最低组−次低组+第三组−⋯

结果与 NNN 对 mmm 同余。

因为:

10kp≡(−1)k(modm) 10^{kp}\equiv(-1)^k\pmod m 10kp≡(−1)k(modm)

5. 合数拆分法

如果:

m=ab,gcd⁡(a,b)=1 m=ab,\qquad \gcd(a,b)=1 m=ab,gcd(a,b)=1

则:

m∣N  ⟺  a∣N 且 b∣N m\mid N\iff a\mid N\text{ 且 }b\mid N m∣N⟺a∣N 且 b∣N

因为 a,ba,ba,b 互质,所以最小公倍数是 ab=mab=mab=m。

以 6 为例完整走一遍:若 2∣N2\mid N2∣N,则 N=2kN=2kN=2k;又 3∣N=2k3\mid N=2k3∣N=2k。由于 gcd⁡(2,3)=1\gcd(2,3)=1gcd(2,3)=1,所以 3∣k3\mid k3∣k,于是 k=3tk=3tk=3t,N=6tN=6tN=6t,故 6∣N6\mid N6∣N。

同时要注意"互质"这个条件不能丢:666 能同时被 222 和 666 整除,但 666 并不能被 121212 整除。原因在于 222 与 666 不互质,两者的最小公倍数是 666,而不是 2×6=122\times6=122×6=12。


快速判定法选择流程

综合上面五种工具,判断一个整数 NNN 能否被 mmm 整除时,可以按下面的流程先选择合适方法:
#mermaid-svg-emu4A1hz6dgMA8pV{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-emu4A1hz6dgMA8pV .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-emu4A1hz6dgMA8pV .error-icon{fill:#552222;}#mermaid-svg-emu4A1hz6dgMA8pV .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-emu4A1hz6dgMA8pV .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-emu4A1hz6dgMA8pV .marker{fill:#333333;stroke:#333333;}#mermaid-svg-emu4A1hz6dgMA8pV .marker.cross{stroke:#333333;}#mermaid-svg-emu4A1hz6dgMA8pV svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-emu4A1hz6dgMA8pV p{margin:0;}#mermaid-svg-emu4A1hz6dgMA8pV .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-emu4A1hz6dgMA8pV .cluster-label text{fill:#333;}#mermaid-svg-emu4A1hz6dgMA8pV .cluster-label span{color:#333;}#mermaid-svg-emu4A1hz6dgMA8pV .cluster-label span p{background-color:transparent;}#mermaid-svg-emu4A1hz6dgMA8pV .label text,#mermaid-svg-emu4A1hz6dgMA8pV span{fill:#333;color:#333;}#mermaid-svg-emu4A1hz6dgMA8pV .node rect,#mermaid-svg-emu4A1hz6dgMA8pV .node circle,#mermaid-svg-emu4A1hz6dgMA8pV .node ellipse,#mermaid-svg-emu4A1hz6dgMA8pV .node polygon,#mermaid-svg-emu4A1hz6dgMA8pV .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-emu4A1hz6dgMA8pV .rough-node .label text,#mermaid-svg-emu4A1hz6dgMA8pV .node .label text,#mermaid-svg-emu4A1hz6dgMA8pV .image-shape .label,#mermaid-svg-emu4A1hz6dgMA8pV .icon-shape .label{text-anchor:middle;}#mermaid-svg-emu4A1hz6dgMA8pV .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-emu4A1hz6dgMA8pV .rough-node .label,#mermaid-svg-emu4A1hz6dgMA8pV .node .label,#mermaid-svg-emu4A1hz6dgMA8pV .image-shape .label,#mermaid-svg-emu4A1hz6dgMA8pV .icon-shape .label{text-align:center;}#mermaid-svg-emu4A1hz6dgMA8pV .node.clickable{cursor:pointer;}#mermaid-svg-emu4A1hz6dgMA8pV .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-emu4A1hz6dgMA8pV .arrowheadPath{fill:#333333;}#mermaid-svg-emu4A1hz6dgMA8pV .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-emu4A1hz6dgMA8pV .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-emu4A1hz6dgMA8pV .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-emu4A1hz6dgMA8pV .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-emu4A1hz6dgMA8pV .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-emu4A1hz6dgMA8pV .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-emu4A1hz6dgMA8pV .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-emu4A1hz6dgMA8pV .cluster text{fill:#333;}#mermaid-svg-emu4A1hz6dgMA8pV .cluster span{color:#333;}#mermaid-svg-emu4A1hz6dgMA8pV div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-emu4A1hz6dgMA8pV .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-emu4A1hz6dgMA8pV rect.text{fill:none;stroke-width:0;}#mermaid-svg-emu4A1hz6dgMA8pV .icon-shape,#mermaid-svg-emu4A1hz6dgMA8pV .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-emu4A1hz6dgMA8pV .icon-shape p,#mermaid-svg-emu4A1hz6dgMA8pV .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-emu4A1hz6dgMA8pV .icon-shape .label rect,#mermaid-svg-emu4A1hz6dgMA8pV .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-emu4A1hz6dgMA8pV .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-emu4A1hz6dgMA8pV .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-emu4A1hz6dgMA8pV :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 是
否
是
否
是
否
是
否
是
否
输入整数 N 和除数 m
判断 10^k mod m
10^k ≡ 0 (mod m) 吗?
末几位法:看末 k 位
10 ≡ 1 (mod m) 吗?
数字和法:看各位数字和
能否找到 c 使 10c ≡ 1 (mod m)?
递推法:N = 10a + b,T = a + cb
10^p ≡ -1 (mod m) 吗?
分组交替法:每 p 位一组交替加减
m 是否为合数且能拆成互质因子?
合数拆分法:分别判断各因子
继续寻找其它同余关系

二、从 2 到 19 逐个详解

2 的判定

方法 :末位是偶数。

依据 :10≡0(mod2)10\equiv0\pmod210≡0(mod2)。

证明:

设 N=10a+bN=10a+bN=10a+b,其中 bbb 是末位,则:

N=10a+b≡b(mod2) N=10a+b\equiv b\pmod2 N=10a+b≡b(mod2)

所以 NNN 能否被 2 整除,只看末位 bbb。

例子:1234 末位是 4,偶数,所以能被 2 整除。


3 的判定

方法 :各位数字和能被 3 整除。

依据 :10≡1(mod3)10\equiv1\pmod310≡1(mod3)。

证明:

N=∑di10i≡∑di(mod3) N=\sum d_i10^i\equiv\sum d_i\pmod3 N=∑di10i≡∑di(mod3)

所以数字和与 NNN 对 3 同余。

例子 :123 的数字和 1+2+3=61+2+3=61+2+3=6,能被 3 整除,所以 123 能被 3 整除。


4 的判定

方法 :末两位能被 4 整除。

依据 :100≡0(mod4)100\equiv0\pmod4100≡0(mod4)。

证明:

设 bbb 是末两位组成的数:

N=100a+b≡b(mod4) N=100a+b\equiv b\pmod4 N=100a+b≡b(mod4)

所以只看末两位。

例子:1316 的末两位是 16,16 能被 4 整除,所以 1316 能被 4 整除。


5 的判定

方法 :末位是 0 或 5。

依据 :10≡0(mod5)10\equiv0\pmod510≡0(mod5)。

证明 :

N=10a+b≡b(mod5) N=10a+b\equiv b\pmod5 N=10a+b≡b(mod5)

所以只看末位。

例子:12345 末位是 5,能被 5 整除。


6 的判定

方法 :能同时被 2 和 3 整除。

依据 :6=2×36=2\times36=2×3,且 gcd⁡(2,3)=1\gcd(2,3)=1gcd(2,3)=1。

证明 :若 2∣N2\mid N2∣N 且 3∣N3\mid N3∣N,因为 2 与 3 互质,所以 6∣N6\mid N6∣N。

例子 :1230 是偶数,数字和 1+2+3+0=61+2+3+0=61+2+3+0=6,能被 3 整除,所以能被 6 整除。


7 的判定

方法 A:去掉末位,减去末位的 2 倍

规则 :设 N=10a+bN=10a+bN=10a+b,计算:

T=a−2b T=a-2b T=a−2b

若 TTT 能被 7 整除,则 NNN 能被 7 整除。可以反复使用。

依据:

10×(−2)=−20≡1(mod7) 10\times(-2)=-20\equiv1\pmod7 10×(−2)=−20≡1(mod7)

因为 (-20+21=1)。

证明:

10T=10(a−2b)=10a−20b 10T=10(a-2b)=10a-20b 10T=10(a−2b)=10a−20b

而:

N−10T=(10a+b)−(10a−20b)=21b N-10T=(10a+b)-(10a-20b)=21b N−10T=(10a+b)−(10a−20b)=21b

因为 21=3×721=3\times721=3×7,所以:

N≡10T(mod7) N\equiv10T\pmod7 N≡10T(mod7)

又因为 gcd⁡(10,7)=1\gcd(10,7)=1gcd(10,7)=1,所以:

T≡0(mod7)  ⟺  N≡0(mod7) T\equiv0\pmod7\iff N\equiv0\pmod7 T≡0(mod7)⟺N≡0(mod7)

求余数:若 (T) 除以 7 余 (r),则:

N≡10r(mod7) N\equiv10r\pmod7 N≡10r(mod7)

方法 B:三位分组交替加减

因为:

1000≡−1(mod7) 1000\equiv-1\pmod7 1000≡−1(mod7)

所以从右往左每三位一组,交错加减:

最低三位−中间三位+最高三位−⋯ \text{最低三位}-\text{中间三位}+\text{最高三位}-\cdots 最低三位−中间三位+最高三位−⋯

结果能被 7 整除,原数就能被 7 整除。

例子:判断 123456789 除以 7 的余数。

分组:

123 ∣ 456 ∣ 789 123\ |\ 456\ |\ 789 123 ∣ 456 ∣ 789

计算:

789−456+123=456 789-456+123=456 789−456+123=456

456≡1(mod7) 456\equiv1\pmod7 456≡1(mod7)

所以 123456789 除以 7 余 1。


8 的判定

方法 :末三位能被 8 整除。

依据 :1000≡0(mod8)1000\equiv0\pmod81000≡0(mod8)。

证明:

设 bbb 是末三位:

N=1000a+b≡b(mod8) N=1000a+b\equiv b\pmod8 N=1000a+b≡b(mod8)

例子 :12312 的末三位是 312,312÷8=39312\div8=39312÷8=39,所以能被 8 整除。


9 的判定

方法 :各位数字和能被 9 整除。

依据 :10≡1(mod9)10\equiv1\pmod910≡1(mod9)。

证明:

N=∑di10i≡∑di(mod9) N=\sum d_i10^i\equiv\sum d_i\pmod9 N=∑di10i≡∑di(mod9)

例子:123456789 的数字和是 45,45 能被 9 整除,所以原数能被 9 整除。


10 的判定

方法 :末位是 0。

依据 :10≡0(mod10)10\equiv0\pmod{10}10≡0(mod10)。

证明 :

N=10a+b≡b(mod10) N=10a+b\equiv b\pmod{10} N=10a+b≡b(mod10)

所以只有 b=0b=0b=0 时才能被 10 整除。

例子:1230 末位是 0,能被 10 整除。


11 的判定

方法 A:奇偶位和之差

从右往左编号,最低位为第 1 位。

奇数位数字和减去偶数位数字和,若差能被 11 整除,则原数能被 11 整除。

依据:

10≡−1(mod11) 10\equiv-1\pmod{11} 10≡−1(mod11)

证明:

N=∑di10i≡∑di(−1)i(mod11) N=\sum d_i10^i\equiv\sum d_i(-1)^i\pmod{11} N=∑di10i≡∑di(−1)i(mod11)

所以奇数位取正,偶数位取负。

方法 B:三位分组交替加减

因为:

1000≡−1(mod11) 1000\equiv-1\pmod{11} 1000≡−1(mod11)

所以也可以用三位分组交替加减。

以 123456789 为例,从右往左分组为 123∣456∣789123|456|789123∣456∣789:

789−456+123=456 789-456+123=456 789−456+123=456

而:

456=11×41+5 456=11\times41+5 456=11×41+5

所以 123456789123456789123456789 除以 11 余 5,与奇偶位法得到的结果一致。

例子:123456789。

从右往左:

  • 奇数位:9、7、5、3、1,和为 25;
  • 偶数位:8、6、4、2,和为 20。

差为 5,不能被 11 整除,所以原数不能被 11 整除。


12 的判定

方法 :能同时被 3 和 4 整除。

依据 :12=3×412=3\times412=3×4,且 gcd⁡(3,4)=1\gcd(3,4)=1gcd(3,4)=1。

证明 :若 3∣N3\mid N3∣N 且 4∣N4\mid N4∣N,则 12∣N12\mid N12∣N。

例子:1236 数字和 12,能被 3 整除;末两位 36,能被 4 整除,所以能被 12 整除。


13 的判定

方法 A:去掉末位,加上末位的 4 倍

规则 :设 N=10a+bN=10a+bN=10a+b,计算:

T=a+4b T=a+4b T=a+4b

若 TTT 能被 13 整除,则 NNN 能被 13 整除。

依据:

10×4=40≡1(mod13) 10\times4=40\equiv1\pmod{13} 10×4=40≡1(mod13)

因为 40−39=140-39=140−39=1。

证明:

10T=10(a+4b)=10a+40b 10T=10(a+4b)=10a+40b 10T=10(a+4b)=10a+40b

而:

N−10T=(10a+b)−(10a+40b)=−39b N-10T=(10a+b)-(10a+40b)=-39b N−10T=(10a+b)−(10a+40b)=−39b

因为 39=3×1339=3\times1339=3×13,所以:

N≡10T(mod13) N\equiv10T\pmod{13} N≡10T(mod13)

又因为 gcd⁡(10,13)=1\gcd(10,13)=1gcd(10,13)=1,所以:

T≡0(mod13)  ⟺  N≡0(mod13) T\equiv0\pmod{13}\iff N\equiv0\pmod{13} T≡0(mod13)⟺N≡0(mod13)

求余数 :若 TTT 除以 13 余 rrr,则:

N≡10r(mod13) N\equiv10r\pmod{13} N≡10r(mod13)

方法 B:三位分组交替加减

因为:

1000≡−1(mod13) 1000\equiv-1\pmod{13} 1000≡−1(mod13)

所以三位分组交替加减对 13 也适用。

例子 :123456789 分组为 123∣456∣789123|456|789123∣456∣789:

123−456+789=456 123-456+789=456 123−456+789=456

456≡1(mod13) 456\equiv1\pmod{13} 456≡1(mod13)

所以原数除以 13 余 1。

14 的判定

方法 :能同时被 2 和 7 整除。

依据 :14=2×714=2\times714=2×7,且 gcd⁡(2,7)=1\gcd(2,7)=1gcd(2,7)=1。

证明 :若 2∣N2\mid N2∣N 且 7∣N7\mid N7∣N,则 14∣N14\mid N14∣N。

例子 :70 是偶数,且 70=7×1070=7\times1070=7×10,所以能被 14 整除。


15 的判定

方法 :能同时被 3 和 5 整除。

依据 :15=3×515=3\times515=3×5,且 gcd⁡(3,5)=1\gcd(3,5)=1gcd(3,5)=1。

证明 :若 3∣N3\mid N3∣N 且 5∣N5\mid N5∣N,则 15∣N15\mid N15∣N。

例子:1230 数字和 6,能被 3 整除;末位 0,能被 5 整除,所以能被 15 整除。


16 的判定

方法 :末四位能被 16 整除。

依据 :10000≡0(mod16)10000\equiv0\pmod{16}10000≡0(mod16)。

证明:

设 bbb 是末四位:

N=10000a+b≡b(mod16) N=10000a+b\equiv b\pmod{16} N=10000a+b≡b(mod16)

例子 :123456 的末四位是 3456,3456÷16=2163456\div16=2163456÷16=216,所以能被 16 整除。


17 的判定

方法 A:去掉末位,减去末位的 5 倍

规则 :设 N=10a+bN=10a+bN=10a+b,计算:

T=a−5b T=a-5b T=a−5b

若 TTT 能被 17 整除,则 NNN 能被 17 整除。

也可以写成"加上末位的 12 倍",因为:

−5≡12(mod17) -5\equiv12\pmod{17} −5≡12(mod17)

依据:

10×(−5)=−50≡1(mod17) 10\times(-5)=-50\equiv1\pmod{17} 10×(−5)=−50≡1(mod17)

因为 −50+51=1-50+51=1−50+51=1。

证明:

10T=10(a−5b)=10a−50b 10T=10(a-5b)=10a-50b 10T=10(a−5b)=10a−50b

而:

N−10T=(10a+b)−(10a−50b)=51b N-10T=(10a+b)-(10a-50b)=51b N−10T=(10a+b)−(10a−50b)=51b

因为 51=3×1751=3\times1751=3×17,所以:

N≡10T(mod17) N\equiv10T\pmod{17} N≡10T(mod17)

又因为 gcd⁡(10,17)=1\gcd(10,17)=1gcd(10,17)=1,所以:

T≡0(mod17)  ⟺  N≡0(mod17) T\equiv0\pmod{17}\iff N\equiv0\pmod{17} T≡0(mod17)⟺N≡0(mod17)

求余数 :若 TTT 除以 17 余 rrr,则:

N≡10r(mod17) N\equiv10r\pmod{17} N≡10r(mod17)

方法 B:八位分组交替加减

因为:

108≡−1(mod17) 10^8\equiv-1\pmod{17} 108≡−1(mod17)

验证:

102=100≡15≡−2(mod17) 10^2=100\equiv15\equiv-2\pmod{17} 102=100≡15≡−2(mod17)

104≡(−2)2=4(mod17) 10^4\equiv(-2)^2=4\pmod{17} 104≡(−2)2=4(mod17)

108≡42=16≡−1(mod17) 10^8\equiv4^2=16\equiv-1\pmod{17} 108≡42=16≡−1(mod17)

所以从右往左每 8 位一组,交错加减。

例子:1700000017。

分组:

17 ∣ 00000017 17\ |\ 00000017 17 ∣ 00000017

最低组为 17,高位组为 17:

17−17=0 17-17=0 17−17=0

所以能被 17 整除。


18 的判定

方法 :能同时被 2 和 9 整除。

依据 :18=2×918=2\times918=2×9,且 gcd⁡(2,9)=1\gcd(2,9)=1gcd(2,9)=1。

证明 :若 2∣N2\mid N2∣N 且 9∣N9\mid N9∣N,则 18∣N18\mid N18∣N。

例子 :12345678 是偶数,数字和 1+2+3+4+5+6+7+8=361+2+3+4+5+6+7+8=361+2+3+4+5+6+7+8=36,能被 9 整除,所以能被 18 整除。


19 的判定

方法 A:去掉末位,加上末位的 2 倍

规则 :设 N=10a+bN=10a+bN=10a+b,计算:

T=a+2b T=a+2b T=a+2b

若 TTT 能被 19 整除,则 NNN 能被 19 整除。

依据:

10×2=20≡1(mod19) 10\times2=20\equiv1\pmod{19} 10×2=20≡1(mod19)

证明:

2N=2(10a+b)=20a+2b 2N=2(10a+b)=20a+2b 2N=2(10a+b)=20a+2b

而:

2N−T=(20a+2b)−(a+2b)=19a 2N-T=(20a+2b)-(a+2b)=19a 2N−T=(20a+2b)−(a+2b)=19a

所以:

2N≡T(mod19) 2N\equiv T\pmod{19} 2N≡T(mod19)

因为 gcd⁡(2,19)=1\gcd(2,19)=1gcd(2,19)=1,所以:

T≡0(mod19)  ⟺  N≡0(mod19) T\equiv0\pmod{19}\iff N\equiv0\pmod{19} T≡0(mod19)⟺N≡0(mod19)

求余数 :因为 T≡2N(mod19)T\equiv2N\pmod{19}T≡2N(mod19),两边乘以 2 的逆元 10,得到:

N≡10T(mod19) N\equiv10T\pmod{19} N≡10T(mod19)

若 (T) 除以 19 余 (r),则原数除以 19 余:

10r(mod19) 10r\pmod{19} 10r(mod19)

为什么 19 的写法看起来不一样? 前面的数大多先凑出 10T≡N10T\equiv N10T≡N,这里则利用 20≡1(mod19)20\equiv1\pmod{19}20≡1(mod19) 直接得到 T≡2NT\equiv2NT≡2N。两种写法等价:因为 222 的模 19 逆元是 101010,对 T≡2NT\equiv2NT≡2N 两边乘 101010,就回到 N≡10T(mod19)N\equiv10T\pmod{19}N≡10T(mod19)。

方法 B:九位分组交替加减

因为:

109≡−1(mod19) 10^9\equiv-1\pmod{19} 109≡−1(mod19)

所以从右往左每 9 位一组,交错加减。

例子:19000000019。

分组:

19 ∣ 000000019 19\ |\ 000000019 19 ∣ 000000019

最低组为 19,高位组为 19:

19−19=0 19-19=0 19−19=0

所以能被 19 整除。


2 到 19 判定方法分类图

把前面所有数字按判定原理归类,可以更直观地看出它们之间的联系。先看一张精简的主分类图:
#mermaid-svg-Dowu6HTxQKIPJjWe{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-Dowu6HTxQKIPJjWe .error-icon{fill:#552222;}#mermaid-svg-Dowu6HTxQKIPJjWe .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Dowu6HTxQKIPJjWe .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Dowu6HTxQKIPJjWe .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Dowu6HTxQKIPJjWe .marker.cross{stroke:#333333;}#mermaid-svg-Dowu6HTxQKIPJjWe svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Dowu6HTxQKIPJjWe p{margin:0;}#mermaid-svg-Dowu6HTxQKIPJjWe .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe .cluster-label text{fill:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe .cluster-label span{color:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe .cluster-label span p{background-color:transparent;}#mermaid-svg-Dowu6HTxQKIPJjWe .label text,#mermaid-svg-Dowu6HTxQKIPJjWe span{fill:#333;color:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe .node rect,#mermaid-svg-Dowu6HTxQKIPJjWe .node circle,#mermaid-svg-Dowu6HTxQKIPJjWe .node ellipse,#mermaid-svg-Dowu6HTxQKIPJjWe .node polygon,#mermaid-svg-Dowu6HTxQKIPJjWe .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Dowu6HTxQKIPJjWe .rough-node .label text,#mermaid-svg-Dowu6HTxQKIPJjWe .node .label text,#mermaid-svg-Dowu6HTxQKIPJjWe .image-shape .label,#mermaid-svg-Dowu6HTxQKIPJjWe .icon-shape .label{text-anchor:middle;}#mermaid-svg-Dowu6HTxQKIPJjWe .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-Dowu6HTxQKIPJjWe .rough-node .label,#mermaid-svg-Dowu6HTxQKIPJjWe .node .label,#mermaid-svg-Dowu6HTxQKIPJjWe .image-shape .label,#mermaid-svg-Dowu6HTxQKIPJjWe .icon-shape .label{text-align:center;}#mermaid-svg-Dowu6HTxQKIPJjWe .node.clickable{cursor:pointer;}#mermaid-svg-Dowu6HTxQKIPJjWe .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-Dowu6HTxQKIPJjWe .arrowheadPath{fill:#333333;}#mermaid-svg-Dowu6HTxQKIPJjWe .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Dowu6HTxQKIPJjWe .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Dowu6HTxQKIPJjWe .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-Dowu6HTxQKIPJjWe .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-Dowu6HTxQKIPJjWe .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-Dowu6HTxQKIPJjWe .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-Dowu6HTxQKIPJjWe .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Dowu6HTxQKIPJjWe .cluster text{fill:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe .cluster span{color:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Dowu6HTxQKIPJjWe .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-Dowu6HTxQKIPJjWe rect.text{fill:none;stroke-width:0;}#mermaid-svg-Dowu6HTxQKIPJjWe .icon-shape,#mermaid-svg-Dowu6HTxQKIPJjWe .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-Dowu6HTxQKIPJjWe .icon-shape p,#mermaid-svg-Dowu6HTxQKIPJjWe .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-Dowu6HTxQKIPJjWe .icon-shape .label rect,#mermaid-svg-Dowu6HTxQKIPJjWe .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-Dowu6HTxQKIPJjWe .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-Dowu6HTxQKIPJjWe .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-Dowu6HTxQKIPJjWe :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 2 到 19 的整除判定法
末几位法
数字和法
合数拆分法
递推法
分组交替法

下面这张表把每个数字对应的原理、方法和依据完整列出,比图更便于逐条查阅:

原理 适用数字 判定方法 核心依据
末几位法 2、5 看末一位 10≡0(mod2)10\equiv0\pmod210≡0(mod2)、10≡0(mod5)10\equiv0\pmod510≡0(mod5)
末几位法 4 看末两位 100≡0(mod4)100\equiv0\pmod4100≡0(mod4)
末几位法 8 看末三位 1000≡0(mod8)1000\equiv0\pmod81000≡0(mod8)
末几位法 16 看末四位 10000≡0(mod16)10000\equiv0\pmod{16}10000≡0(mod16)
数字和法 3 数字和能被 3 整除 10≡1(mod3)10\equiv1\pmod310≡1(mod3)
数字和法 9 数字和能被 9 整除 10≡1(mod9)10\equiv1\pmod910≡1(mod9)
合数拆分法 6 同时被 2 和 3 整除 6=2×36=2\times36=2×3,互质
合数拆分法 12 同时被 3 和 4 整除 12=3×412=3\times412=3×4,互质
合数拆分法 14 同时被 2 和 7 整除 14=2×714=2\times714=2×7,互质
合数拆分法 15 同时被 3 和 5 整除 15=3×515=3\times515=3×5,互质
合数拆分法 18 同时被 2 和 9 整除 18=2×918=2\times918=2×9,互质
递推法 7 去末位减 2 倍 10×(−2)≡1(mod7)10\times(-2)\equiv1\pmod710×(−2)≡1(mod7)
递推法 13 去末位加 4 倍 10×4≡1(mod13)10\times4\equiv1\pmod{13}10×4≡1(mod13)
递推法 17 去末位减 5 倍 10×(−5)≡1(mod17)10\times(-5)\equiv1\pmod{17}10×(−5)≡1(mod17)
递推法 19 去末位加 2 倍 10×2≡1(mod19)10\times2\equiv1\pmod{19}10×2≡1(mod19)
分组交替法 11 一位分组(奇偶位和之差) 10≡−1(mod11)10\equiv-1\pmod{11}10≡−1(mod11)
分组交替法 7、11、13 三位分组交替 1000≡−1(mod7)1000\equiv-1\pmod71000≡−1(mod7)、1000≡−1(mod11)1000\equiv-1\pmod{11}1000≡−1(mod11)、1000≡−1(mod13)1000\equiv-1\pmod{13}1000≡−1(mod13)
分组交替法 17 八位分组交替 108≡−1(mod17)10^8\equiv-1\pmod{17}108≡−1(mod17)
分组交替法 19 九位分组交替 109≡−1(mod19)10^9\equiv-1\pmod{19}109≡−1(mod19)

提示:同一数字可能同时属于多种原理,例如 7 既可用递推法(去末位减 2 倍),也可用三位分组交替法;11 既可用奇偶位和之差,也可用三位分组交替法。上表按"最常用"的归类列出,方便快速查阅。

三、总览表

数字 判定方法 核心依据
2 末位是偶数 10≡0(mod2)10\equiv0\pmod210≡0(mod2)
3 数字和能被 3 整除 10≡1(mod3)10\equiv1\pmod310≡1(mod3)
4 末两位能被 4 整除 100≡0(mod4)100\equiv0\pmod4100≡0(mod4)
5 末位是 0 或 5 10≡0(mod5)10\equiv0\pmod510≡0(mod5)
6 同时被 2 和 3 整除 6=2×36=2\times36=2×3,互质
7 去末位减 2 倍;或三位分组交替 10×(−2)≡1(mod7)10\times(-2)\equiv1\pmod710×(−2)≡1(mod7),1000≡−1(mod7)1000\equiv-1\pmod71000≡−1(mod7)
8 末三位能被 8 整除 1000≡0(mod8)1000\equiv0\pmod81000≡0(mod8)
9 数字和能被 9 整除 10≡1(mod9)10\equiv1\pmod910≡1(mod9)
10 末位是 0 10≡0(mod10)10\equiv0\pmod{10}10≡0(mod10)
11 奇偶位和之差;或三位分组交替 10≡−1(mod11)10\equiv-1\pmod{11}10≡−1(mod11),1000≡−1(mod11)1000\equiv-1\pmod{11}1000≡−1(mod11)
12 同时被 3 和 4 整除 (12=3\times4),互质
13 去末位加 4 倍;或三位分组交替 (10\times4\equiv1\pmod{13}),(1000\equiv-1\pmod{13})
14 同时被 2 和 7 整除 (14=2\times7),互质
15 同时被 3 和 5 整除 (15=3\times5),互质
16 末四位能被 16 整除 (10000\equiv0\pmod{16})
17 去末位减 5 倍;或八位分组交替 (10\times(-5)\equiv1\pmod{17}),(10^8\equiv-1\pmod{17})
18 同时被 2 和 9 整除 (18=2\times9),互质
19 去末位加 2 倍;或九位分组交替 (10\times2\equiv1\pmod{19}),(10^9\equiv-1\pmod{19})

四、如何自己推导更多判定法

如果你想判断一个数 mmm 的整除规则,可以这样做:

  1. 计算 10k mod m10^k\bmod m10kmodm;
  2. 如果某个 10k≡0(modm)10^k\equiv0\pmod m10k≡0(modm),就看末 kkk 位;
  3. 如果 10≡1(modm)10\equiv1\pmod m10≡1(modm),就看数字和;
  4. 如果 10p≡−1(modm)10^p\equiv-1\pmod m10p≡−1(modm),就从右往左每 ppp 位分组,交替加减;
  5. 否则找 ccc 使 10c≡1(modm)10c\equiv1\pmod m10c≡1(modm),然后用递推法:
    N=10a+b,T=a+cb N=10a+b,\qquad T=a+cb N=10a+b,T=a+cb
    判断 (T) 是否被 (m) 整除;
  6. 如果 (m) 是合数且能拆成互质因子,就拆开分别判断。

实例:推导 23 的整除判定法。

求 ccc 使:

10c≡1(mod23) 10c\equiv1\pmod{23} 10c≡1(mod23)

因为 10×7=70≡1(mod23)10\times7=70\equiv1\pmod{23}10×7=70≡1(mod23),所以取 c=7c=7c=7。设 N=10a+bN=10a+bN=10a+b,令:

T=a+7b T=a+7b T=a+7b

则:

10T=10(a+7b)=10a+70b≡10a+b=N(mod23) 10T=10(a+7b)=10a+70b\equiv10a+b=N\pmod{23} 10T=10(a+7b)=10a+70b≡10a+b=N(mod23)

又 gcd⁡(10,23)=1\gcd(10,23)=1gcd(10,23)=1,所以:

T≡0(mod23)  ⟺  N≡0(mod23) T\equiv0\pmod{23}\iff N\equiv0\pmod{23} T≡0(mod23)⟺N≡0(mod23)

于是得到:去掉末位,加上末位的 7 倍。例如 253253253,去掉末位是 252525,加上 3×7=213\times7=213×7=21 得 464646,46=2×2346=2\times2346=2×23,所以 253253253 能被 23 整除。


五、注意事项

  1. 合数拆分必须互质 。

    例如 12=3×412=3\times412=3×4,3 和 4 互质,可以拆;

    但 12=2×612=2\times612=2×6,2 和 6 不互质,不能简单说"同时被 2 和 6 整除"。

  2. 递推法可以反复使用 。

    例如判断 7、13、17、19 时,可以一步步缩小数字,直到容易判断。

  3. 求余数时要注意系数 。

    递推法得到的是 TTT,原数 N≡10T(modm)N\equiv10T\pmod mN≡10T(modm)。

    所以若 TTT 余 rrr,原数余 10r(modm)10r\pmod m10r(modm)。

  4. 分组法从右往左分组 。

    不足一组时左边补零。

    例如 17 用八位分组,19 用九位分组。

  5. 这些方法只用于判定整除或求余数,不能代替完整除法。


六、总结

从 2 到 19 的整除判定法,表面上是不同口诀,实际上都是同一个逻辑:

N≡0(modm) N\equiv0\pmod m N≡0(modm)

的不同展开方式。

  • 当 10k≡010^k\equiv010k≡0 时,看末几位;
  • 当 10≡110\equiv110≡1 时,看数字和;
  • 当 10p≡−110^p\equiv-110p≡−1 时,分组交替;
  • 当 10c≡110c\equiv110c≡1 时,用"去末位、加减末位倍数"的递推法;
  • 当 mmm 是合数时,拆成互质因子分别判断。

掌握这些同余关系,你不仅能理解 2 到 19 的规则,还能自己推导出 23、29、31 等更多整数的判定方法。

相关推荐
让学习成为一种生活方式1 小时前
啤酒花基因组与重测序--Nature Communications
人工智能·算法
l1t1 小时前
DeepSeek总结的OpenZL压缩变换器
c++·算法
想吃火锅10051 小时前
【leetcode】238.除了自身以外数组的乘积js
javascript·算法·leetcode
坤坤子吖2 小时前
算法学习——高精度加减乘除
c++·笔记·学习·算法
CQU_JIAKE2 小时前
10.1[A]2267,磐久UMX【上下文128K,KVCache部分]
算法
朝朝辞暮i2 小时前
C++ 第 14 课:引用 &
开发语言·c++·算法
Joe_Wang52 小时前
【从0到1学习JVM · 21】既不浪费空间又没有碎片,标记整理算法到底慢在哪
jvm·学习·算法·垃圾回收·标记整理算法
让学习成为一种生活方式2 小时前
PlantCellChat--单细胞与空间转录组数据预测植物细胞间通讯的R包--The Plant Journal
算法
C++ 老炮儿的技术栈2 小时前
有符号变量与无符号变量的区别
服务器·开发语言·前端·数据结构·c++·算法·c