今有积三万五千步,问为圆几何?答曰六百四十八步一千二百九十六分步之九十六。这道题是第26讲的回转:面积已知,反求圆的周长。解法只有一句关键的「以十二乘之」——因为周三径一,周长平方除以十二正是圆面积,反过来就要乘十二。一步乘回去,开方就得答案。
原典
今有积,三万五千步。问为圆几何?
答曰:六百四十八步一千二百九十六分步之九十六。
术曰:置积三万五千步以一十二乘之,得四十二万,为实,次借一算为下法,步之超一位至百而止。上商置六百于实之上,副置六万于实之下。下法之上,名为方法,命上商六百除实,除讫,倍方法,方法一退,下法再退,复置上商四十以次前商,副置四百于方法之下。下法之上,名为廉法,方廉各命上商四十以除实,除讫,倍廉法,方法一退,下法再退,复置上商四,副置四于方法之下。下法之上,名曰隅法,方廉隅各命上商四以除实,除讫。
白话翻译
有一块圆田,面积三万五千平方步。问它的周长是多少?
答案是:六百四十八步,再加一千二百九十六分之九十六步。
术文给的算法是:把面积三万五千步乘十二,得四十二万,作为「实」;然后借一枚算筹作下法,逐位退至百位;接着上商六百、四十、四,按第 26 讲「有积求方」的方法开方,最后得六百四十八,余数用分数表示。
这道题真正的机关在最开头四个字:「以十二乘之」。 为什么已知面积求周长,第一步反而是乘十二?
示意图

图:35,000 × 12 = 420,000 = 周²;开方得 648 余 96,答案 648 又 96/1296 步
古人的算法
第一步,面积乘十二。
35000×12=420000
术文「以十二乘之,得四十二万」。
为什么是十二? 这正是第 18 讲「圆窖受粟」用过的关系。古率周三径一,即 π≈3,圆面积
S=4πC2=12C2
所以周长平方 = 面积 × 十二。 已知面积要反求周长,就得先把面积乘回十二,得到 C2:
C2=S×12=420000
第二步,开方求周长。 这就回到了第 26 讲的算法——「有积求方」。实是 420000,平方根是周长。
先夹逼:
6482=419904,6492=421201
420000 落在两者之间,且离 648 更近。余数
420000−419904=96
于是答案写成分数形式。分母同样来自「倍方法」:
2×648=1296
所以
C=648+129696=648129696
可约分:129696=272,所以更简洁的形式是 648272 步。答曰写「一千二百九十六分步之九十六」,是不约分的原始形态——中算常保留推算过程中的分母,便于读者复算。
验算一下精度:
648272≈648.0741
用今天的话:420000≈648.0741。二者一致。再反推面积:
S=12C2≈12648.07412≈12420000.03≈35000.003
与题目所给 35000 步吻合到小数点后三位。
现代数学视角
用今天的公式链:已知圆面积 S,求周长 C。
S=πr2,C=2πr
消去 r:由第二式 r=2πC,代入第一式
S=π(2πC)2=4πC2
所以
C2=4πS,C=4πS
古人取 π=3,于是 4π=12,公式变成 C=12S。 这就是「以十二乘之,然后开方」的全部来历——一步乘法把「圆」化成了「方」,剩下的交给第 26 讲的算法。
若改用 π=3.14,同样面积 35000 步的圆周长为
C=4×3.14×35000=439600≈662.9 步
比古法的 648 步大了 648662.9−648≈2.3%。古率把圆算小了——这与第 18 讲粮窖「估大偏安全」相反,因为这里是同一面积的另一种度量:π 取小了,等面积下反推出的周长就小。
两道题是一对漂亮的互逆运算:第 18 讲「已知周长深求容积」是「先平方再除十二」;本题「已知面积求周长」是「先乘十二再开方」。乘除互逆、平方开方互逆,古人在两题里把这两组逆运算都用上了。把它们排在一起读,就能看出中算书的编排逻辑——不是按难度,是按算法对的。
高中课本关联
逆运算与方程思想:已知 S 求 C,是解方程 12C2=S。今天学生学「换元法」「逆运算解方程」,本题是同一思维的古代版本——把圆问题乘一个数变成方问题,解完再对应回去。
算术平方根:C=420000。注意这里只取正根——边长、周长都是正量,负根没有实际意义。这是「算术平方根」与「平方根」区别的最好教材。
二次函数与反函数:S=12C2 是开口向上的抛物线,已知 S 求 C 是在正半轴上取它的反函数。让学生在图上描出 (648,35000) 与 (648.07,35000) 两点,「几乎水平」的直观立刻就出来了。
近似与精度:π=3 与 π=3.14 造成 2.3% 的差异。讨论这个差异该由谁负责——是算法错了,还是常数取得粗?答案显然是后者。这类讨论能帮助学生区分方法误差与参数误差。
思考与拓展
-
算一算:验算 35000×12=420000、6482=419904、420000−419904=96、2×648=1296,复现答案 648129696。
-
约分:把 129696 约成最简。古人为啥不约?写出你的猜想。
-
两题对照:第 18 讲是「已知周长深求容积」,本题是「已知面积求周长」。分别写出两步算法的口诀(第 18 讲:平方、乘、除十二、除斛法;本题:乘十二、开方),说明它们的互逆关系。
-
换常数:若用 π=3.14,公式 C2=4πS 中的常数变成多少?重算本题,与古法 648 步比较误差。
-
反问题:若一块圆田周长 648 步,用古率反推面积是多少?再用 π=3.14 推,两者差多少?
一句话总结
乘十二把圆化成方,开方把方解出来——「以十二乘之」四个字,藏着周三径一的全部秘密。
— Y. · 2026-10-16