长除法计算器
结果
商
- 余数
- 10
- 逐步过程
- 1 / 12 = 0 r 1; 12 / 12 = 1 r 0; 3 / 12 = 0 r 3; 34 / 12 = 2 r 10
- 验算
- 12 * 102 + 10 = 1234
长除法是把一个整数除以另一个整数、除不尽时用的笔算方法,这一页把它的每一步都印出来。1234 ÷ 12 的过程是四行。1 除以 12 不够除,所以商的这一位是 0,余下 1。把下一位 2 落下来凑成 12,12 ÷ 12 得 1,余 0。把 3 落下来凑成 3,3 ÷ 12 得 0,余 3。把 4 落下来凑成 34,34 ÷ 12 得 2,余 10。商的各位依次是 1、0、2,所以 1234 ÷ 12 = 102 余 10,而最后剩下的那个 10 才是整个除法的余数。竖式里的每一行都是同一个形状:拿已经凑出来的数,看除数能整个放进去几次,把次数记成答案的一位,剩下的留着和下一位合并。这就是为什么商的位数恒等于被除数的位数,也是为什么 0 可以是一位正当的商——102 中间那个 0 是有用的。这里的余数一律是非负的那一种口径,也就是最小值取到 0 的那一套。被除数或除数是负数时两套口径给出的答案不同,那种情况归余数口径那一页管。最后一条输出是验算:除数 × 商 + 余数 = 被除数。它不是另一项计算,而是商与余数这两个词的定义。12 × 102 + 10 就是 1234,所以这三个数彼此自洽。有两种特殊情况会遇到。被除数小于除数时商是 0、余数就是被除数本身,因为除数一次都放不进去。除数是 1 时商等于被除数、余数为 0,被除数有几位就有几行。商的各位也正是小数的来路:余数开始重复的地方,小数就开始循环,1 ÷ 7 就是最标准的例子。
5432 ÷ 17 展开写,一步的每个部分占一列
| 步骤 | 这一步要除的数 | 除数 | 商的这一位 | 余数 |
|---|---|---|---|---|
| 1 | 5 | 17 | 0 | 5 |
| 2 | 54 | 17 | 3 | 3 |
| 3 | 33 | 17 | 1 | 16 |
| 4 | 162 | 17 | 9 | 9 |
横着读一行就是竖式里的一行:拿去除的数、与它比较的除数、得到的商的这一位、以及剩下多少。第一行是 5 对 17,得 0 次、余 5,所以商位是 0。下一行把 4 落下来凑成 54,54 ÷ 17 得 3、余 3。要留意的规律在「这一步要除的数」那一列:每一格都是上一格的余数再添上被除数的一位,那就是「落下来」的意思,也是唯一从一行带到下一行的东西。商位那一列收集起来就是答案,0 3 1 9 也就是 319,而余数那一列的最后一格 9 才是整个除法的余数。拿它验算:17 × 319 + 9 = 5432。注意商位里开头那个 0 被丢掉了,而中间那个 0 不能丢——某一位是 0 说明除数在那一步的数里一次都放不下,那是信息,而开头的 0 只是不写而已。表固定在 5432 ÷ 17 上,不跟着你填的数走;上面的面板对你自己填的数做同样的四列,被除数有几位就有几行。
公式
1234 ÷ 12 → 1/12 = 0 余 1;12/12 = 1 余 0;3/12 = 0 余 3;34/12 = 2 余 10 ⇒ 商 102、余 10,且 12 × 102 + 10 = 1234
- 1234
- 被除数,也就是被除的那个数,取 0 到 1000000000 之间的整数。0 是允许的,商与余数都是 0。负数与小数被拒绝,因为下面那套算法是建立在「位」上的,而这一页没有声明符号约定
- 12
- 除数,也就是用来除的那个数,取 1 到 1000000000 之间的整数。它不能是 0:没有任何东西能分成 0 份,也没有商能满足验算式。它可以比被除数大,这时商是 0、余数就是被除数本身
- 1、2、3、4
- 被除数的各位数字,从左边一位一位取。每一步都把它加到上一步的余数后面,这就是「落下来」的意思。步数等于被除数的位数,所以 1234 走四步,1000000000 走十步
- 0、1、0、2
- 每一步得到的商的这一位:除数在那个数里能整个放进去几次。某一步的数比除数小时,那一位就是 0,而这些 0 是答案的一部分——102 中间那个 0 丢了就变成 12
- 1、0、3、10
- 每一步剩下的余数,恒为非负。最后那个才是整个除法的余数,前面几个都是中间量,下一位落下来之后它们就并入下一步了。这里任何一步都不会是负数,这也是负的被除数归余数口径那一页管的原因
- 被除数 = 除数 × 商 + 余数
- 验算那条输出,它其实是整个运算的定义而不是附加结果:1234 ÷ 12 写出来是 12 × 102 + 10 = 1234。这一行成立,商与余数按定义就是对的;这一行不成立,这一页上别的东西也都不用信了
这就是笔算方法本身,所以需要它的人是正在学它的人。步骤那一串就是本该写在纸上的过程,自己的竖式与它逐行对一遍,分歧出现在哪一行,错就在哪里——这比直接被告知正确答案有用。验算那一行是另一半:除数乘商加余数等于被除数,读者手里只要有商和余数就能核对,连长除法都不必重做。课堂之外,整数的分配问题用的就是同一套拆法:1234 件东西按 12 件一组分,得到 102 个整组还剩 10 件,余数就是分不下去的那部分。余数为 0 表示正好分完。这套算法也是小数的来路:把过程跨过小数点继续做下去、每次补一个 0,得到的就是商的小数;而余数一重复,小数就跟着循环——1 ÷ 7 会永远走同样六个余数,这就是 1/7 的循环节有六位的原因。编程语言处理负的被除数有两套常见做法,截断与向下取整,它们给出的答案不同;这一页印的非负余数是向下取整那套,而两套并排的对照在余数那一页。
算例
1234 ÷ 12,默认值
- 把 1 落下来:1 ÷ 12 得 0,商的这一位是 0,余下 1
- 把 2 落下来:凑成 12,12 ÷ 12 得 1,正好除尽
- 把 3 落下来:凑成 3,3 ÷ 12 得 0,余 3
- 把 4 落下来:凑成 34,34 ÷ 12 得 2,余 10
- 商的各位依次是 0、1、0、2,去掉前面那个 0 就是 102
- 最后余 10,验算核对:12 × 102 + 10 = 1234
默认值,也是说明「商里的 0 不能省」的那一格。第三步之所以贡献一个 0,是因为 3 比 12 小,而那一位不是摆设——答案是 102 而不是 12。第一步那个开头的 0 被省掉,因为 102 与 0102 是同一个数的两种写法。验算那一行值得当句子读:除数乘以答案,加上剩下的,就回到你一开始填的那个数。
5432 ÷ 17,参考表用的那一格
- 把 5 落下来:5 ÷ 17 得 0,余 5
- 把 4 落下来:凑成 54,54 ÷ 17 得 3(3 × 17 = 51),余 3
- 把 3 落下来:凑成 33,33 ÷ 17 得 1(17),余 16
- 把 2 落下来:凑成 162,162 ÷ 17 得 9(9 × 17 = 153),余 9
- 商的各位是 0、3、1、9,也就是 319,余 9
这就是下面那张表一行一行摊开的那四步,两边都读一遍是有价值的:每一步都把除数乘回去找一个还放得下的最大乘积——3 × 17 = 51 对 54,1 × 17 = 17 对 33,9 × 17 = 153 对 162——余数就是那个差额。这里的差额是 3、16、9,每一个都比除数 17 小,正是这条不变量使每一步的商位都是能取到的最大那一位。
余数会循环的一格:1000000000 ÷ 7
- 把 1 落下来:1 ÷ 7 得 0,余 1
- 把后面每一个 0 依次落下来,凑成 10、30、20、60、40、50,然后又回到 10
- 商的各位是 1、4、2、8、5、7,接着又是 1、4、2、8
- 走到第七步余数回到 1,整个循环从头开始
- 商是 142857142,最后余 6
这里的余数依次是 1、3、2、6、4、5,然后回到 1——那就是 1/7 的循环,也是商的各位重复成 142857 的原因。重复不是这一格的特殊现象:只要余数重复一次,后面的一切就跟着重复,因为下一步只取决于落下来的那个数。这也是为什么一个分数化成小数,要么有限要么循环,以及 1/7 的循环节为什么有六位。
除数比被除数还大:7 ÷ 999999999
- 只有一位要落下来,就是那个 7
- 7 ÷ 999999999 得 0,因为 999999999 比 7 大得多
- 商的这一位是 0,整个被除数都剩了下来
- 商是 0,余数是 7
商是 0 是一个真答案,不是算失败了。除数一次都放不进去时,什么都没有被拿走,所以余数就是整个被除数,验算式写出来是 999999999 × 0 + 7 = 7。步骤只有一行,因为被除数只有一位——步数永远等于被除数的位数,与除数有多大没有关系。
局限
两个数都必须是整数。被除数取 0 到 1000000000 闭区间,除数取 1 到 1000000000 闭区间。除数为 0 被拒绝:没有任何数乘以 0 能得到一个非零的被除数,也就没有哪对商与余数能满足验算式。负数被拒绝,而不是带着一套符号规则硬处理,因为这一页展示的算法是建立在「位」上的,而负数相除的两套口径彼此不一致——这一页印的是非负余数,需要区分口径的场合归余数那一页管,那里两套并排。小数被拒绝:把过程跨过小数点继续做下去是补 0 的另一套做法,这一页不做,尽管上面那些重复的余数正是那些小数的来路。被除数为 0 是收的,商与余数都是 0。步骤列表的被除数有几位就有几行,所以十位的被除数是十行、面板会长,那是过程本身而不是它的摘要。下面那张参考表固定在 5432 ÷ 17 上,不跟着你填的数走;面板回答你填的数,表格用来说明每一步的每一列是什么。所有值都精确,没有任何四舍五入。
常见问题
- 长除法一步步怎么做?
- 从被除数的左边开始一位一位来。拿已经凑出来的数除以除数,把能整个放进去的次数写成答案的下一位,剩下的留着;然后把下一位落下来——接在余数后面——继续,直到被除数的位用完。1234 ÷ 12 得到的各位是 0、1、0、2,最后余 10,所以答案是 102 余 10。
- 商和余数有什么区别?
- 商是除数能整个放进被除数的次数,余数是放不下之后剩下的部分。两者由定义绑在一起:被除数等于除数乘商加余数。1234 ÷ 12 的商是 102、余数是 10,而 12 × 102 + 10 正好回到 1234。余数永远小于除数,正是这条性质使商成为能取到的最大整数。
- 为什么这里的余数不会是负数?
- 因为这一页用的是余数非负的那套口径——减掉的是不超过被除数的最大倍数,剩下的一定在 0 与除数之间。编程语言常用的是截断,那会留下负余数:−1 除以 2 按截断得余 −1,按这套口径得 1。余数那一页把两套并排放着。这一页的负的被除数是拒绝的,而不是默默挑一套。
- 答案里可以有 0 吗?
- 可以,而且那个 0 是答案的一部分。某一步的数比除数小时,商的这一位就是 0,所以 1234 ÷ 12 得到的各位是 0、1、0、2——中间那个 0 不能省,因为 102 与 12 是不同的数。只有开头的 0 会被省略,因为 0102 与 102 本来就是同一个数。
- 被除数比除数小会怎样?
- 商是 0,余数是整个被除数。7 ÷ 999999999 得 0 次,什么都没有被拿走,所以 7 全都剩了下来,验算式是 999999999 × 0 + 7 = 7。步骤只有一行,因为步数永远等于被除数的位数,与除数有多大没有关系。
- 余数为什么会开始重复?
- 因为每一步只取决于落进来的那个数,所以某个余数一回来,它后面的一整串就跟着重来。1000000000 除以 7 得到的余数依次是 1、3、2、6、4、5,然后又是 1,于是商的各位重复成 142857。这正是循环小数的来路:把同样的过程跨过小数点、每次补一个 0,那段循环就变成 1/7 的循环节。
参考资料
- Long division — the written algorithm, including the notation and the digit-by-digit procedure this page prints one line at a time — Wolfram MathWorld (United States)
- Division — the dividend, divisor, quotient and remainder, and the identity that relates them — Wolfram MathWorld (United States)
- Quotient — what a quotient is, and the distinction between the exact quotient and the whole-number part that long division produces — Wolfram MathWorld (United States)
- 教育部关于印发义务教育课程方案和课程标准(2022 年版)的通知——该通知的附件清单第 5 项是《义务教育数学课程标准(2022 年版)》;除数是两位数的除法与有余数除法是该课标数与代数领域的内容,原文与学段要求以该附件为准 — 中华人民共和国教育部