程序员的数学 · 第 3 章
余 数
周期性和分组
把巨大的数字,变成一道简单的除法
适用 6-8 年级
90 分钟
7 个思考题闯关
开场 · 热身
02
余数 · 周期性和分组
不数到 100 亿,
怎么知道那天是星期几?
今天是星期日。1 亿天以后——大约 27 万年后——是星期几?
一个一个数?1 秒数 1 下,要数 3 年多。
用计算器?也装不下这么多位。
别慌。这节课送你一件数学里的「降维武器」——余数。
武器:余数 R
1 亿天以后是……
100000000
100000000 ÷ 7 = ?
数不过来,也算不动……直到我们看见「循环」。
答案藏在第 8 页 —— 武器就是余数
开场 · 路线图
03
余数 · 周期性和分组
今天要闯的两道关卡
7 个思考题 · 每学一个知识,立刻练一道题
1
周期与余数
思考题① 100 天后是星期几?
思考题② 10 的 100 次方天后呢?
思考题③ 超大乘方的个位数是几?
关键词:周期 · 分组
2
奇偶校验
思考题④ 黑白棋读心魔术
思考题⑤ 小猫在哪村?⑥ 草席铺得满吗?
思考题⑦ 七座桥能走遍吗?
关键词:奇偶 · 分类
开场 · 热身
04
余数 · 周期性和分组
先热热身:奇数和偶数
师
奇数是什么?
生
1、3、5、7、9……
师
对!奇数=除以 2 余 1。偶数呢?
生
除以 2 余 0,能被 2 整除!
除法就像分组:余数是几,你就属于哪一组。
第一关 · 45 分钟
周期与余数
找到循环的规律,让巨大的数字投降
思考题 ① ② ③ 等你来闯
第一关 · 思考题①
06
余数 · 周期性和分组
思考题 ①
今天是星期日,
100 天以后
是星期几?
提示:一周 7 天,转一圈回到起点
第一关 · 思考题①
07
余数 · 周期性和分组
解法一:先数整数圈,再走几步
1
98 ÷ 7 = 14,整整转了 14 圈 → 还是星期日
2
第 99 天 → 星期一
3
第 100 天 → 星期二
答案:星期二
第一关 · 思考题①
08
余数 · 周期性和分组
解法二:一步除法,余数直接给答案
100 ÷ 7 = 14 ……
2
0周日
1周一
2周二
3周三
4周四
5周五
6周六
n 天后是星期几 = n ÷ 7 的余数
×
数 100 次
慢,数到 1 亿要 3 年
√
除 1 次
1 亿天后也只要一步
100000000 ÷ 7 余 2 → 星期二
第一关 · 图解
09
余数 · 周期性和分组
把星期想成一个「七角时钟」
走 100 格 = 转了 14 圈,再走 2 格
商 14 告诉你「转了几圈」,
余数 2 告诉你「最后停在哪一格」。
转多少圈不重要,
停在哪一格才重要。
这就是余数:把漫长的绕圈,一步压缩成终点位置。
第一关 · 概念
10
余数 · 周期性和分组
余数的本质:除法就是分组
余数 = 组号
除以 7,余几就进几号组
余数相同 = 同一组
1、8、15 除以 7 都余 1
除一次,分完所有数
再大的数也逃不出 7 个组
第一关 · 生活链接
11
余数 · 周期性和分组
体育课报数,你早就玩过余数
二年级的「周期问题」你已经学过:找规律 → 定周期 → 列算式 → 看余数
今天只升级一件事:把「第 16 面小旗」换成 100 天、1 亿天、甚至 10 的 100 次方天。
课堂练习 ①
12
余数 · 周期性和分组
课堂练习 ①
学完就练 —— 3 道题,同桌互查,5 分钟
限时 5 分钟
1
今天是星期三,
56 天后是星期几?
想想 56 和 7 的关系
2
1 亿天后是星期几?
要求:10 秒内抢答!
别数!除一次就够了
3
今年元旦是星期六。
闰年有 366 天,
明年元旦是星期几?
闰年这一年有 366 天
课堂练习 ①
13
余数 · 周期性和分组
练习 ① 参考答案
√第 1 题
56 ÷ 7 = 8 余 0
没有余数 = 正好转了 8 整圈
→ 还是星期三
√第 2 题
100000000 ÷ 7 余 2
余 2 → 星期二
1 亿天也只除一次
√第 3 题
366 ÷ 7 = 52 余 2
周六 + 2 天
→ 星期一
易错点:余 0 不是「没有答案」,而是「正好一整圈」→ 回到起点那天。
第一关 · 思考题②
14
余数 · 周期性和分组
思考题 ②
今天是星期日,
10 的 100 次方天后
是星期几?
10 的 100 次方 = 1 后面跟 100 个 0
一共 100 个 0
直接除?计算器直接装不下!
第一关 · 提示
15
余数 · 周期性和分组
别跟大数硬碰,先试小的
数太大算不动 → 那就算小的!
1 天、10 天、100 天、1000 天……
一个一个试,观察「除以 7 的余数」有什么变化。
猜一猜:余数也会循环吗?
观察什么?
10 天后 → 10 ÷ 7 余 3
100 天后 → 余 2
1000 天后 → 余 6
盯住「余数」这一栏,看它有没有规律。
第一关 · 找规律
16
余数 · 周期性和分组
试算:10、100、1000……除以 7 的余数
第一关 · 发现规律
17
余数 · 周期性和分组
余数循环了!周期是 6
周期 = 6
每增加 6 个 0,星期数就重复一次。
所以只看「0 的个数 ÷ 6」的余数就够了。
第一关 · 答案
18
余数 · 周期性和分组
揭晓答案:星期四!
100 ÷ 6 = 16 ……
4
100 亿天后?余 4,还是星期四。
(不过那时宇宙可能都不在了)
10¹⁰⁰ 天后
星期四
第一关 · 图解
19
余数 · 周期性和分组
一座越走越慢的「六角时钟」
10 天后指 1,100 天后指 2,1000 天后指 3……
指针指向的,是指数 n ÷ 6 的余数。
0 越多,走得越慢——所以它是「越走越慢的钟」。
埋个伏笔
「0 的个数」能代表数有多大 —— 这个想法以后会长成一对新工具:指数与对数。
课堂练习 ②
20
余数 · 周期性和分组
课堂练习 ②
周期 6 已经到手 —— 用它解决三道「不可能的大数」
限时 5 分钟
1
10¹⁶ 天后
是星期几?
0 的个数 = 16
2
10²⁰²⁶ 天后
是星期几?(今年是 2026 年哦)
2026 ÷ 6,口算试试
3
10⁹⁹⁹⁹⁹ 天后
是星期几?
99999 ÷ 6,口算试试
课堂练习 ②
21
余数 · 周期性和分组
练习 ② 参考答案
16 ÷ 6 = 2 余 4
余 4 → 周四
16 个 0,除以周期 6。
2026 ÷ 6 = 337 余 4
余 4 → 周四
2026 = 6 × 337 + 4。
99999 ÷ 6 = 16666 余 3
余 3 → 周六
十万位的天数,也只用一次除法。
注意:商有多大一点都不重要 —— 16 和 2026 的商差得远,余数都是 4,答案就都是周四。
第一关 · 思考题③
22
余数 · 周期性和分组
思考题 ③
1234567⁹⁸⁷⁶⁵⁴³²¹
的个位数
是几?
提示:只关心「个位」,其他位都是龙套
第一关 · 提示
23
余数 · 周期性和分组
个位只听个位的话
那就试 7 的乘方
7¹ = 7 个位 7
7² = 49 个位 9
7³ = 343 个位 3
7⁴ = 2401 个位 1
7⁵ = 16807 个位 7 ← 又回来了!
第一关 · 试算
24
余数 · 周期性和分组
试算:7 的乘方,个位数会循环吗?
个位数在 7 → 9 → 3 → 1 之间打转,每 4 个一轮!
周期 = 4
7、9、3、1 这四个数字反复出现,长度是 4。
所以真正要算的只有一件事:987654321 ÷ 4 的余数。
第一关 · 答案
25
余数 · 周期性和分组
揭晓答案:个位数是 7
987654321 ÷ 4 = 246913580 ……
1
余 1 → 取周期里第 1 个数字 7。所以这个 8 亿多位的巨数,个位是 7。
第一关 · 方法
26
余数 · 周期性和分组
三步法:把巨数变成小问题
三个思考题,其实用的是同一把钥匙
1
找周期
从最小的开始算:10 天、100 天、1000 天……
7¹、7²、7³……
直到某个结果「重复出现」。
2
定长度
数一数一个循环里有几个数,记作 L。
星期问题:L = 7(后来变 6)
个位问题:L = 4
3
取余数
用那个大得算不动的数 ÷ L:
余 r → 取周期里第 r 个;
余 0 → 取最后一个。
大数不可怕:除法一次,余数就把「算不动」变成「数得清」。
课堂练习 ③
27
余数 · 周期性和分组
课堂练习 ③
三步法到手 —— 自己动手算三道「算不动」的题
限时 6 分钟
1
3²⁰²⁶ 的个位数
是几?
先自己找 3 的周期
算 3¹、3²、3³、3⁴ 的个位
2
2¹⁰⁰ 的个位数
是几?
注意余 0 的情况
这题有个小陷阱,小心!
3
挑战:今天是星期四,
2¹⁰⁰ 天后是星期几?
周期可能不是 7 哦
先算 2ⁿ ÷ 7 的余数,看它多久循环一次。
课堂练习 ③
28
余数 · 周期性和分组
练习 ③ 参考答案
2026 ÷ 4 = 506 余 2
余 2 → 取第 2 个 → 9
3 的个位周期:3、9、7、1,第 2 个就是 9。
答案:9
100 ÷ 4 = 25 余 0
余 0 → 取最后一个 → 6
2 的个位周期:2、4、8、6,余 0 就取第 4 个 6。
答案:6
100 ÷ 3 = 33 余 1
第 1 个 → 2¹⁰⁰ ÷ 7 余 2
2ⁿ ÷ 7 的余数周期是 2、4、1,长度 3。星期四再走 2 天。
答案:星期六
易错点:余 0 时不能取「第 0 个」——要取周期的最后一个。
第二关 · 45 分钟
奇偶校验
只看「奇」和「偶」,不看数有多大
思考题 ④ ⑤ ⑥ ⑦ 等你来闯
第二关 · 情境
30
余数 · 周期性和分组
先变个魔术:猜中你藏的那枚棋
老师要蒙上眼睛。你随便摆、随便翻,我都能知道你动没动手。
1
你把这盘黑白棋随意摆在桌上
2
老师偷偷加进一枚「自己的棋子」
3
老师转身。你选择:翻一枚,或者不翻
4
老师回头看一眼,说:你翻过了!
第二关 · 规则
31
余数 · 周期性和分组
魔术的完整规则
1
观众摆棋
黑白棋随意排列,数量不限。此时黑棋有多少枚,只有数过才知道。
2
老师加一枚情报棋
看清全场后,添上一枚黑棋或白棋,让「黑棋总数」变成偶数。
3
老师转身
观众可以翻动任意一枚棋子一次,也可以什么都不做。
4
老师睁眼揭晓
只数一数黑棋是奇数还是偶数,就知道观众有没有翻。
第二关 · 提示
32
余数 · 周期性和分组
秘密藏在那一枚「情报棋」里
老师只做了一件事:让黑棋总数变成偶数
黑棋是奇数 → 加一枚黑棋
黑棋是偶数 → 加一枚白棋
从此「黑棋有偶数枚」成了一个暗号,一条基准线。
关键问题
翻动一枚棋子,黑棋总数会怎样变化?
一枚都不翻,又会怎样?
第二关 · 答案
33
余数 · 周期性和分组
答案:只看黑棋的奇偶,就够了
翻 0 枚
黑棋总数仍是偶数
→ 你没有动手
翻 1 枚
黑棋总数变成奇数
→ 你一定翻过了
翻 2 枚
黑棋总数又变回偶数
→ 藏回「没翻」的队伍里
一句话总结:翻一次,奇偶翻转;翻两次,等于没翻。所以「奇偶」就是这次魔术的唯一情报。
老师并不需要知道棋子的具体数目 —— 只需要「奇」还是「偶」这一个 bit 的信息。
第二关 · 概念
34
余数 · 周期性和分组
这个魔术,计算机每秒做几十亿次
它有一个正式名字:奇偶校验位(parity bit)
第二关 · 生活中的校验
35
余数 · 周期性和分组
身份证的最后一位,是怎么算出来的?
第 1 步:加权求和
权重:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
加权和 = 189
第 2 步:除以 11,看余数
189 ÷ 11 = 17 余 2
余数只可能是 0 ~ 10 这 11 种
第 3 步:查表得校验码
余数:0 1 2 3 4 5 6 7 8 9 10
校验码:1 0 X 9 8 7 6 5 4 3 2
余数有 11 种可能 → 分成 11 组。你看,「余数就是分组」在生活中到处都是。
课堂练习 ④
36
余数 · 周期性和分组
课堂练习 ④
奇偶三道题 —— 不用数,只判断「奇」还是「偶」
限时 5 分钟
1
桌上黑棋有 8 枚(偶数)。
观众翻了 1 枚棋子后,
黑棋个数是奇数还是偶数?
翻一枚 = 黑变白或白变黑
2
同样是这 8 枚黑棋,
如果翻了 3 枚呢?
奇偶会变吗?
3 是奇数还是偶数?
3
收到一串数据
11001011
约定「1 的个数必须是偶数」,它对吗?
先数一数有几个 1
课堂练习 ④
37
余数 · 周期性和分组
练习 ④ 参考答案
8 − 1 = 7
翻 1 枚 → 奇数
翻一次,奇偶一定翻转。原来是偶数,就变成奇数。
答:奇数
翻了 3 次
奇数次 → 奇偶翻转
翻 3 枚 = 翻转 3 次,效果和翻 1 枚一样,都是「奇数次」。
答:奇数
数出 5 个 1
5 是奇数 → 不对
约定偶数却是奇数,说明传输过程中有一位被翻掉了。
答:出错了
记住:奇偶校验只能发现「奇数个错误」。如果同时错了 2 位,它就被骗过去了。
第二关 · 思考题⑤
38
余数 · 周期性和分组
寻找走失的小猫
一年前,小猫从 A 村 出发去旅行。
它每个月都会跑到相邻的村子里去(也可以跑回来)。
这一年它一共移动了 11 次(有一个月生病,待在原地没动)。
现在,它有可能在 B 村 吗?
提示:每移动一次,村子序号的奇偶都会翻转。
第二关 · 提示
39
余数 · 周期性和分组
路线算不完,但目的地算得完
×
一条一条数路线:每次有 2 个选择,
11 次就是 2¹¹ = 2048 条 —— 太多了
√
只问「落在哪一类村子」:
奇村 还是 偶村
不看路线,看目的地
奇偶性像一盏灯
移动 1 次 → 灯变色
移动 2 次 → 灯变回原色
移动 3 次 → 又变色……
所以:移动偶数次 = 颜色不变
移动奇数次 = 颜色翻转
11 是奇数 → 颜色翻转
第二关 · 答案
40
余数 · 周期性和分组
答案:小猫不可能在 B 村
换个问法试试
如果小猫移动了 12 次(偶数次)呢?
答案
偶数次 → 颜色不变 → 只可能在 A、C、E、G 这四个奇数村。
这就是奇偶的力量
不数路线,也能一口否掉一半的可能性。
第二关 · 思考题⑥
41
余数 · 周期性和分组
这间屋子,能正好铺满草席吗?
屋子的地面是 8 × 8 = 64 个方格。
可是装修时不小心,把 对角线上的两个角格 敲掉了,
现在只剩 62 格。
每张草席恰好盖住 相邻的两格,不能裁剪、不能重叠。
62 格需要 31 张草席。
请问:能正好铺满吗?
第二关 · 提示
42
余数 · 周期性和分组
给地面涂上黑白格,奇迹出现了
每张草席必盖「一黑一白」
相邻两格一定是不同颜色,这是棋盘染色的铁律。
两角同色,被敲掉后就失衡了
原来的 64 格是 32 黑 + 32 白。
两个对角线角格颜色相同,敲掉后变成 ——
第二关 · 答案
43
余数 · 周期性和分组
答案:铺不满
1
62 格,需要 31 张 草席
2
每张草席盖 1 黑 1 白 → 31 张需要 31 黑 + 31 白
3
但地面只有 30 黑 + 32 白 —— 黑格少了一格!
30 ≠ 31 → 矛盾 → 无论怎么铺,都不可能铺满。
这道题教会我们什么
我们没有真的去尝试每一种铺法(那有上亿万种),
只用一个「黑白分类」,就判了死刑。
不用穷举,只需分类
第二关 · 思考题⑦
44
余数 · 周期性和分组
七座桥,能一次走遍吗?
这是 1736 年的柯尼斯堡。
河中间有两座小岛,河两岸是市区,一共架了 7 座桥。
居民们争论了几十年:
能不能从某地出发,每座桥恰好走一次,
最后回到出发点?
提示:把「陆地」简化成点,把「桥」简化成线。
第二关 · 提示
45
余数 · 周期性和分组
把地图简化成一张「点线图」
数一数「度数」
北岸:3 条
南岸:3 条
甲岛:5 条
乙岛:3 条
全是奇数!
4 个点,度数 3、3、5、3 —— 四个都是「奇点」。
欧拉的发现
能一次走完所有线的图,奇点只能有 0 个或 2 个。
第二关 · 答案
46
余数 · 周期性和分组
答案:走不了,一座桥都别想省
0 个奇点
可以一笔画,
而且能回到出发点
2 个奇点
可以一笔画,
但起点终点必须是这两个点
4 个奇点
不行!
柯尼斯堡正好是这种
欧拉 1736 年用「奇偶」判了这个案子:答案是不可能。这一笔,开创了图论。
又一次:我们没有真的去走,只是数了数奇偶,就知道了结局。
收尾 · 总结
47
余数 · 周期性和分组
本章总结:余数是一件「降维武器」
第一关 · 周期性
星期数、乘方个位、10 的 100 次方……
它们都在 循环。
找周期 → 定长度 → 取余数
再大的数字,一次除法就投降。
第二关 · 奇偶性
黑白棋魔术、小猫在哪村、
草席铺不满、七桥走不通……
只要把东西分成 两组,
就能不用穷举,直接否掉一半可能。
一句话
余数 = 分组的编号。
准确分类,往往胜过精确把握。
算不动的时候,先问一句:
它属于哪一组?
7 个思考题,7 次「降维」:把数不清的东西,变成数得清的东西。
彩蛋
同学
「我的人生 360 度大转弯了!」
老师
「360 度……那不是没变吗?」
转一整圈,看起来什么都没变。
可「转了 360 度」和「一步没动」,是两件完全不同的事 ——
就像余数:余 0 不是「没有」,而是「正好一整圈」。
下一章预告:数学归纳法 —— 用「一步」走完「无限步」
下课啦
《程序员的数学》第 3 章 · 余数——周期性和分组