一亩田收六又三分之二升粟。一顷二十六亩一百五十九步,能收多少?答案是 8 斛 4 斗 4 升又 12 分之 5 升——考你把一顷拆成步,还要认得出「太半」是 2/3。
原典
今有田一亩,收粟六升、太半升。今有田一顷二十六亩一百五十九步,问:收粟几何?
答曰:八斛四斗四升、一十二分升之五。
术曰:以亩二百四十步为法,以六升、太半升乘今有田积步为实,实如法得粟数。
白话翻译
现在有一亩田,收获六又三分之二升粟。现在有一顷二十六亩一百五十九步田,问:收获多少粟?
答案是:八斛四斗四升又十二分之五升。
算法是:以一亩的二百四十步作为"法"(除数),用"六又三分之二升"乘现有的田折成的积步数作为"实"(被除数)。用实除以法,得到粟数。
示意图

图注:$\frac{20}{3}\times\frac{30399}{240} = \frac{10133}{12} = 844\frac{5}{12}$ 升 $= 8$ 斛 $4$ 斗 $4$ 升 $\frac{5}{12}$ 升
古人的算法
先认一个古汉语数字词:"太半"。《九章算术》的分数词汇是标准化的:
太半=32,少半=31,中半=21
所以单产是:
6 升太半升=632=320(升/亩)
再算田地的总步数。关键是 1 顷=100 亩、1 亩=240 步(这里"步"指平方步,是面积单位):
1 顷26 亩159 步=126 亩159 步
126×240=30240(步),30240+159=30399(步)
按术文算:
实=320×30399=320×30399=3607980=202660
240202660=240÷20202660÷20=1210133=844125(升)
现代数学视角
直接把面积化成"亩":
总面积=126+240159=1268053(亩)
总产=320×1268053=320×8010133=240202660=844125(升)
再按容量单位拆:
1 斛=10 斗=100 升,1 斗=10 升
844125 升=800+40+4+125=8 斛4 斗4 升125 升
即"八斛四斗四升、一十二分升之五"。
为何古人要把面积化到"步"?
表面看,本题完全可以像我们那样化到"亩"。但古术坚持化到最小单位,原因有三:
- 统一的算法框架。衰分、今有诸术的程序都是"以所有数为实、以所有率为法",把所有量归到同一最小单位,程序才不必为每道题改写。
- 避免繁分数。1268053 亩带着一个复合分数,而 30399 步是整数——古算偏爱整数运算。
- 量纲清晰。实是"升 × 步",法是"步/亩",相除得"升·亩",再归到"升",中间过程一目了然。
这与今天计算机科学里"整数运算取代浮点运算以避免精度损失"的思路,颇有神似。
高中课本关联
知识点定位:
- 人教A版必修第一册:分数混合运算与量纲分析(分子分母单位的相消)
- 初中数学:比例与单位换算
高考考法:
"单产 × 面积 = 总产"的古代版本。本题的难点不在计算,而在读题:
- 认出"太半" =32(这是送分题,也是送命题);
- 记住 1 亩=240 平方步、1 顷=100 亩;
- 把 240202660 约成 1210133,看出 844 余 5。
易错点: 把"一顷二十六亩一百五十九步"误读为 100×26+159。顷与亩是 100 倍关系,必须加法(100 + 26 = 126 亩)。
思考与拓展
1. 反求单产
若一顷二十六亩一百五十九步收 8 斛 4 斗 4 升 12 分之 5 升,问一亩收多少?把你的答案写成"X 升太半/少半升"试试。
2. 换成少半
若单产改为"五升、少半升"(即 531 升),同样面积的田能收多少斛斗升?
3. 一步到位?
我们上面用了"化到步"和"化到亩"两种算法,结果相同。请用代数解释:为什么 320×24030399=320×130399/240?(提示:乘以 2401 与先除以 240 再相乘,是乘法结合律。)
一句话总结
一亩 632 升、一顷 26 亩 159 步即 30399 步,320×30399÷240=844125 升——拆成斛斗升,正是八斛四斗四升又十二分之五。
— Y. · 2026-11-09