逢7过报数游戏

一圈人依次报数,轮到 7 的倍数、或者数字里含有 7 的数时要喊「过」而不是报数。1 到 100 里这样的数有 30 个,其中 70 到 79 连续十个全部命中。本页替你记轮次、记触发序列、记每个人失误几次,支持 2 到 16 人、上限 10 到 2000。

默认 4 人局、上限 100:1..100 触发 30 个,第 3 人最容易踩(11 次)。
人数 4;上限 100;已报 0 已报 0 / 100;命中 0 个;安全 0 个 点「下一个数」开始报数,或点「自动跑完」一次跑完 -- 每人失误(4 人局,1..100)-- 第 1 人 8 次 第 2 人 6 次 第 3 人 11 次 第 4 人 5 次 -- 触发序列(共 30 个,前 12 个)-- 7(第 3 人,7 的倍数且含 7) 14(第 2 人,7 的倍数) 17(第 1 人,含 7) 21(第 1 人,7 的倍数) 27(第 3 人,含 7) 28(第 4 人,7 的倍数) 35(第 3 人,7 的倍数) 37(第 1 人,含 7) 42(第 2 人,7 的倍数) 47(第 3 人,含 7) 49(第 1 人,7 的倍数) 56(第 4 人,7 的倍数)
触发序列表默认显示 12 行。

默认 4 人局、上限 100、还没开始报数。点「下一个数」报下一个,「自动跑完」一次跑到底。

使用方法

  1. 「人数」默认 4,范围 2 到 16;「报数上限」默认 100,范围 10 到 2000。改完任意一项立刻重算,光标停在框里按回车同样触发。
  2. 「当前已报到」默认 0,表示还没开始。它也是跳步入口:直接填 70 就跳到第 70 个数,用来复盘某一段。
  3. 「下一个数」报到下一个数并更新轮次:结果区给出这个数由第几个人报、是喊「过」还是照报、命中原因是 7 的倍数还是含数字 7。
  4. 「自动跑完」把剩下的一次跑到底,适合先看全局分布再复盘;「重置」把已报到归零、清空失误计数。
  5. 结果区上面一行是全局统计:这个上限下一共触发几个、占比多少、还剩几个安全数。下面一段是每人失误数与触发序列。
  6. 每人失误数按座位列出:4 人局跑完 1 到 100,第 1 人 8 次、第 2 人 6 次、第 3 人 11 次、第 4 人 5 次。
  7. 下面那张触发序列表默认显示 12 行,点「加载更多」展开全部,点「导出 CSV」存成带字节序标记的文件;「复制结果」复制整段清单。
  8. 「复制对照表」复制正文里那张不同上限的密度表,制表符分隔,可以直接粘进表格软件。
  9. 人数填了小数或超出 2 到 16、上限超出 10 到 2000、已报到超过上限,都会给出指明原因的提示。

这个逢7过报数游戏能解决什么问题

这个游戏的规则只有一句:轮到 7 的倍数、或者数字里含有 7 的数,要喊「过」。真正让人翻车的不是整除,而是「含 7」——1 到 100 里 7 的倍数只有 14 个,含数字 7 的却有 19 个,两者交集 3 个(7、70、77),合计触发 30 个。很多人整局都在默背 7 的乘法表,一到 70 就集体出错,因为 70 到 79 这十个数一个都跑不掉。

第二个用处是复盘谁最容易踩。人数只决定轮次,不决定难度:4 人局里第 3 个人要面对的是所有除以 4 余 3 的数,跑完 1 到 100 他会踩 11 次,而第 4 人只有 5 次。想让局面更公平,换人数或换起始报数人就够了;想让局面更热闹,把上限调大。

第三个用处是控制时长。上限 50 触发 11 个(22.00%),上限 100 触发 30 个(30.00%),上限 1000 触发 374 个(37.40%)。同一桌人,上限从 100 提到 1000,要记的安全数从 70 个涨到 626 个,一局能拖多久心里就有数了。

它也能当课堂上的整除练习用:把上限设小、人数设多,学生轮流报数,触发序列就是现成的答案表。

第四个用处是当判定标准用。线上开黑或视频聚会时,谁喊错了常常各执一词;把人数和上限填进来,触发序列表就是标准答案,第几个数该由谁喊「过」一目了然,不必再争。

计算原理与变量说明

整页只有一条判定式和两条映射,没有随机数,也不需要联网。

变量定义说明
命中判定n % 7 === 0 或数字串含 7两者满足其一即命中
报数人((k − 1) % p) + 1第 k 个数由第几个人报
失误数该人报出的命中个数按人数分摊,合计等于总触发数
密度触发数 ÷ 上限随上限上升但非线性

规则的主来源不是整除而是「含 7」。1 到 100 里 7 的倍数 14 个、含数字 7 的 19 个、两者都满足 3 个,总触发 14 + 19 − 3 = 30 个。含 7 的那 19 个是 7、17、27、37、47、57、67、70 到 79 这十个、87、97;70 到 79 连续十个全部命中,才是这游戏最难的一段——很多人只盯着 7 的倍数,一到 70 就集体翻车。

密度随上限上升,而且不是线性的。1 到 50 触发 11 个(22.00%)、1 到 100 触发 30 个(30.00%)、1 到 200 触发 61 个(30.50%)、1 到 500 触发 152 个(30.40%)、1 到 1000 触发 374 个(37.40%)、1 到 2000 触发 749 个(37.45%)。从 500 跳到 1000 密度突然涨了 7 个百分点,因为 700 到 799 这一整百段里百位本身就是 7,一百个数一个都躲不掉。

人数只决定轮次,不决定难度。p 人局里第 r 个人只可能踩到「除以 p 余 r」的那些数,所以 7 的倍数会以 p 为周期在固定几个人之间轮转,这是老手能预判的原因。2 人局第一个触发数 7 由第 1 人报出、4 人局由第 3 人报出、5 人局由第 2 人报出,都只跟余数是几有关。

上限越大越难,但难的是记忆不是算术。1 到 100 有 70 个安全数要记,1 到 1000 有 626 个。加倍上限不会让规则变复杂,只是把「已经报过哪些」这件事推出工作记忆的容量。

顺带一提,触发占比之所以在 1000 附近跳一档,是因为十进制里「含数字 7」的比例随位数上升:一位数里只有 7 这一个,两位数里有 19 个,三位数里跳到 271 个。位数每多一位,想躲开数字 7 就更难,这也是本页要把上限做成可调项的原因。

完整示例(数值仅作演示)

打开页面是 4 人局、上限 100、已报 0。结果区给出 1 到 100 共触发 30 个(30.00%)、安全数 70 个,以及每人失误:第 1 人 8 次、第 2 人 6 次、第 3 人 11 次、第 4 人 5 次,合计正好 30。

连点 7 次「下一个数」,第 7 个数由第 3 人报出,命中原因是「7 的倍数且含 7」,这一个数同时满足两条。再点到 17:17 由第 1 人报出,只满足含 7,不是 7 的倍数。点到 21:第 1 人报出,只满足 7 的倍数。

把「当前已报到」直接填 69,再点「下一个数」,报出的是 70——4 人局里 70 由第 2 人报出,含 7 且是 7 的倍数;往下连点,71、72、73、74、75、76、77、78、79 全部命中,这一段没有安全数。

把上限改成 1000 再点「自动跑完」:触发 374 个(37.40%)、安全 626 个,触发序列表会长到 374 行,默认仍只显示 12 行,需要时点「加载更多」。

逢7过触发对照表

第一张表是不同上限下的触发构成,「复制对照表」复制的就是它。

上限7 的倍数含数字 7两者都触发总数密度安全数
507511122.00%39
100141933030.00%70
200283856130.50%139
50071951415230.40%348
10001422713937437.40%626
20002855427874937.45%1251

第二张表把 1 到 100 的触发序列拆成两类,两者交集只有 7、70、77。

类别个数全部取值
7 的倍数147、14、21、28、35、42、49、56、63、70、77、84、91、98
含数字 7197、17、27、37、47、57、67、70、71、72、73、74、75、76、77、78、79、87、97
两者都满足37、70、77
合计触发3014 + 19 − 3 = 30,占 30.00%

第三张表是几段连续区间:70 到 79 十个全中,700 到 799 一百个全中。

区间个数命中原因
70 ~ 791010十位是 7,整段无安全数
170 ~ 1791010十位是 7,整段无安全数
700 ~ 799100100百位是 7,整段无安全数

读法:第一张看密度怎么随上限走,500 到 1000 那一段跳了 7 个百分点;第二张看两类规则的重叠,交集只有 3 个;第三张看连续区间。

结果边界、舍入与适用说明

常见问题

7 的倍数和含数字 7,哪一类更多?

1 到 100 里 7 的倍数 14 个、含数字 7 的 19 个,含 7 更多。两者交集 3 个(7、70、77),合计触发 30 个。

为什么一到 70 就集体出错?

70 到 79 这十个数的十位都是 7,整段全部命中,没有安全数。只盯着 7 的倍数背的人会漏掉 71、72、73 这些不是倍数的数。

上限从 500 提到 1000 为什么突然难很多?

因为 700 到 799 这一百个数百位就是 7,一个都躲不掉。密度从 30.40% 跳到 37.40%,涨了 7 个百分点。

人数多了会不会更难?

不会。人数只决定轮次:p 人局里第 r 个人只可能踩到除以 p 余 r 的数,难度不变,只是每人分到的触发数变了。4 人局跑完 1 到 100 是 8、6、11、5 次。

怎么知道该谁先报?

第 k 个数由 ((k − 1) % p) + 1 号报出。2 人局第一个触发数 7 由第 1 人报、4 人局由第 3 人报、5 人局由第 2 人报。

已经报完了还想继续怎么办?

把「报数上限」调大再点「自动跑完」,或者先点「重置」重来一局。已报数不能超过上限,超了会给出提示。

能不能跳到某一段复盘?

能。直接在「当前已报到」里填 69,再点「下一个数」就落在 70,那一段连续十个全部命中。

这一页会上传人数和上限吗?

不会。三个数字只在本页的脚本里参与取余与计数,没有发起任何网络请求,也没有写入本地存储。

相关工具