第5讲 登山望楼 —— 三望术:从楼底到楼顶的完整测量
这一讲是海岛算经里第一次出现"三望"——先测楼底(两次累矩)确定水平距离,再测楼顶(小表)算出楼高。从地面到楼顶,古人只用相似三角形,就把一个三维测量问题拆解成两步。
白话翻译
今有登山望楼,楼在平地。偃矩山上,令句高六尺。从句端斜望楼足,入下股一丈二尺。又设重矩于上,令其间相去三丈。更从句端斜望楼足,入上股一丈一尺四寸。又立小表于入股之会,复从句端斜望楼岑端,入小表八寸。问楼高几何?
答曰:八丈。
术曰:上下股相减,馀为法;置矩间,以下股乘之,如句高而一。所得,以入小表乘之,为实。实如法而一,即是楼高。
这道题说的是什么
前面几题,我们测的是海岛、松树、城邑——都是"一个目标"。
这一题变了:目标有两个——楼底和楼顶。
想象一下:你站在山顶上,山下有一座楼。你手里有一个直角矩(相当于一个直角三角板),竖直边高 6 尺(句高)。你站在山顶,顺着矩的斜边往下看,视线刚好落到楼底,在矩的水平边上留下了 1 丈 2 尺的"入股"(下股)。
然后你再往后退 3 丈,放第二个矩,同样看楼底,这次入股只有 1 丈 1 尺 4 寸(上股)。
有了这两个数据,你就能算出山到楼的水平距离。
但等等——我们还没算楼高呢!你只知道楼底在哪里,但楼顶呢?
刘徽的解法是:在"入股之会"(即第一次测量时视线与矩的交点)立一根小标杆,再顺着矩的斜边往楼顶看,看小标杆被"吃掉"了多少——入小表 8 寸。
这个 8 寸,就是楼高在矩上的投影。结合前面算出的水平距离,就能求出楼高。
这就是典型的三望术:先测两次楼底定位水平距离,再测一次楼顶推算出楼高。
示意图
关键:矩间距离 d = 3丈,两次测楼底得到下股和上股,再测楼顶得到入小表。
图怎么画出来
这道题的本质是两次相似三角形。
第一步:先算山到楼的水平距离
设句高为 尺,矩间距离为 丈 尺。
第一次测量(矩在山顶):
其中 丈 尺 尺(下股), 是山到楼的水平距离, 是第一次矩到楼底的水平偏移。
第二次测量(矩后退 3 丈):
其中 丈 尺 寸 尺(上股)。
从 (1) 得 ,代入 (2):
代入数值:
第二步:用小表测楼高
在第一次测量时,视线与矩的斜边交于一点。在这个点立一根小标杆(小表)。
现在看楼顶,视线擦过小标杆顶端,在小表上"吃掉"了 寸 尺。
这个 和楼高 的关系,由相似三角形给出:
而从 (1) 我们知道 ,代入 (4):
代入数值:
等等,这只有 1.6 尺?不对——这只是小表处的"局部楼高",还要乘以一个比例因子。
实际上,刘徽的术文是:
上下股相减,馀为法;置矩间,以下股乘之,如句高而一。所得,以入小表乘之,为实。实如法而一,即是楼高。
翻译成现代公式:
与答案完全一致!
古人的算法解读
这道题是三望术的典型代表。刘徽的算法分三步:
第一步:上下股相减,得 尺,作为"法"(分母)。
第二步:矩间乘以"下股",再除以"句高",得 尺。这个 60 尺其实是在计算某个比例因子——它等于 。
第三步:把这个比例因子乘以"入小表"( 尺),得到 尺,作为"实"(分子)。
最后:实除以法, 尺 丈。
这个算法非常简洁:三步运算,一次除法,一次乘法,一次除法——没有中间步骤的复杂计算,所有数据都是直接测量得到。
回头看公式:
这个公式的几何直觉是: 和 的差值越小(两次测量视角越接近),说明楼越远,楼的微小高度差在矩上反映得越明显,因此 在分母上——差值越小,放大的楼高越大。
这道题的精妙之处
这道题最精彩的地方,在于把"三维测量"拆解成了两步"二维测量":
- 先测楼底——用两次累矩(类似前两题的"望深谷"方法),确定山到楼的水平距离。
- 再测楼顶——在第一次测量视线与小表的交点,加一个小标杆,通过"入小表"的长度推算楼高。
为什么有了前两步还不够?因为前两步只告诉我们"楼底在哪里",但楼有多高是额外的信息。
刘徽的聪明之处在于:不需要额外去量楼底到楼顶的水平距离——因为楼是垂直的,楼底和楼顶在同一个竖直线上。所以第一次测量时的"入股之会"点,天然就是楼顶视线在矩上的投影基准。
这就好比:先锁定目标的位置,再测量目标的高度——两个独立问题,用同一个几何框架解决。
跟高中数学的关系
这道题对应的高中知识点是:
相似三角形的连续应用 + 比例线段
具体对应
- 相似三角形的判定:AA 判定(两个角对应相等)
- 比例线段:相似三角形对应边成比例
- 解方程:从比例关系建立方程,求解未知量
高考题型
这道题本质上是"连续两次利用相似三角形建立方程"的典型题。在高考中,这类题出现在:
- 解三角形应用题——尤其是"测量高度/距离"类问题
- 立体几何初步——空间中的垂直关系与投影
典型的考题形式:某人在 A 处测楼顶仰角为 ,后退 米到 B 处,测楼顶仰角为 ,求楼高。这正是刘徽累矩法的现代版本——只不过古人用的是"股"(水平差),现代用的是"正切"。
教学启示(可选)
这道题对高中数学教学很有启发:
-
测量的本质是构造相似——所有的测量问题,不管是立表、累矩还是小表,核心都是构造一对相似三角形,把未知量投射到已知量上。
-
三望术的思维方式——前几题是"二望"(一次差),这一题是"三望"(两次差 + 一次小表)。从二望到三望,不是简单加一个观测点,而是测量维度的升级:从"定位一个点"到"测量一个物体的尺寸"。
-
一步一步拆解——刘徽没有直接去算楼高,而是先算水平距离,再算楼高。这种分步拆解的思想,在任何复杂问题中都是通用的。
思考与拓展
-
这道题中,如果矩间距离 变大,对计算结果有什么影响?反过来,如果矩间距离太小(比如 尺),会有什么问题? (提示:看公式中 的位置,以及 的大小变化。)
-
你能不能把这道题改成一个"现代版"的高考题?已知观测点位置、后退距离、两次仰角,求楼高。 (提示:用 和 代替古人的"入股"。)
-
刘徽为什么要在"入股之会"立小表,而不是直接在矩上标记? (提示:小表是独立的测量工具,可以自由移动;矩一旦固定,其上的刻度就只能在原地读数。)
-
这道题的三望法,和前面"望深谷"(第3题)的累矩法,有什么区别和联系? (提示:望深谷只测深度,登山望楼要测高度——但数学结构几乎一样,只是多了一个"小表"步骤。)
一句话总结
三望术拆解了三维测量问题:两次累矩锁定楼底位置,一次小表锁定楼顶高度——一个几何框架,分步解决两个变量。