上一篇的文章里,讲过一个非常有趣的几何作图问题,这个问题最早是由 D. Pedoe 教授在 1983 年提出的:给定 A 、 B 两点,只用一个生锈的圆规(没有直尺),如何找出一个点 C ,使得 A 、 B 、 C 恰好构成一个等边三角形?所谓“生锈的圆规”,也就是一个被卡住的圆规,它的两脚张角不能改变。我们不妨假设,它只能画出单位大小的圆。1987 年,我国的侯晓荣等人成功地解决了这个问题,并借助复平面理论得到了很多一般的结果,其研究成果《锈规作图论》发表在了《中国科学技术大学学报》上。
锈规作出等边三角形的方法非常漂亮:利用锈规作图,我们能构造出两点之间由单位长线段构成的折线段,进而实现平行四边形的构造(已知其中三个点,能够只用锈规找出第四个点),进而完成等边三角形的构造。刚才提到的那篇“很老很老的文章”里有详细的描述,继续阅读之前,强烈建议先看一看。
事实上,D. Pedoe 教授还提过另外一个问题:给定 A 、 B 两点,只用锈规能否作出 A 、 B 连线的中点?注意,由于没有直尺,线段 AB 实际上是画不出的。要想“隔空”找出线段的中点,显然并不容易。
前几天翻起张景中的《数学家的眼光》,就是为了查阅这个问题的解决方法。《数学家的眼光》一书中详细描述了锈规作图找中点的方法,在这里和大家分享。
有了作等边三角形的方法后,有一件很爽的事情,就是我们可以任意地倍长线段了。如图,给定 A 、 B 两点后,连续作三次等边三角形,我们便能得到 E 点,使得 A 、 B 、 E 在一条直线上,并且 AB = BE 。
接下来的证明过程分成三步。首先我们将说明,如果线段 AB 的长度正好等于 1/√19,如何仅用锈规找出线段 AB 的中点。然后我们将进一步推出,只要线段 AB 的长度小于 2/√19,我们都能找出 AB 的中点。最后,我们将得到一种找出任意长线段的中点的办法。大家或许会说,在作图之前,我怎么知道 AB 有多长呢?读完全部证明后你就会发现,这其实无关紧要,我们不用知道 AB 的长度,最后得出的方法适用于任何长度的线段。
首先假设 AB = 1/√19。用刚才的倍长法,作出同一直线上的 B’ 、 C 、 C’ 三个点,使得 C’B’ = B’A = AB = BC。分别以 C 、 C’ 为圆心,以单位长为半径作圆,两圆相交于点 D 。因此, △DCC’ 就是一个腰长为 1 ,底边长为 4/√19的等腰三角形。用勾股定理可以算出, DA (也就是等腰三角形的高)的长度为 √15/ √19, DB 的长度则为 4/√19。接下来,倍长 BD 到 B”,分别以 B 和 B” 为圆心作单位圆,两圆交于 E 、 E’ 两点。显然, BB” 和 EE’ 互相垂直平分,用勾股定理可以求出,DE = DE’ = √3/ √19。最后,作出等边三角形 EE’G ,容易看出 G 恰好落在 BD 上,并且用勾股定理可以算出 DG = 3/√19。也就是说, G 点正好是 BD 的四等分点!
用同样的方法,我们可以找出线段 AB 下方的另一个 G 点,不妨把它叫做 G’ 。作出以 G 、 B 、 G’ 为顶点的平行四边形 GBG’M ,由相似关系可以得出, M 点就是 BB’ 的四等分点,也就是 AB 的中点了。
接下来,我们将推出,只要 AB 的长度小于 2/√19,我们都能找出 AB 的中点来。像图中那样,以 AB 为底,连续作等边三角形,构成一个“五层宝塔”,最顶端的点记作点 K 。显然,三角形 ABK 是一个等腰三角形。用勾股定理不难算出, AK = BK = √19· AB ,也就是说这个三角形的腰长是底边的 √19倍。接下来,以 K 为圆心作单位圆,再分别以 A 、 B 为圆心画弧,与圆 K 分别交于 P 、 Q 两点。分别以 P 、 Q 为圆心作单位圆,把两圆的另一个交点记作点 C 。注意到, △BCQ 是一个腰长为 1 的等腰三角形。另外,在圆 Q 中,圆心角 ∠BQC 等于两倍的圆周角 ∠BKC ,而 ∠BKC 又是 ∠BKA 的一半,因此 ∠BQC = ∠BKA 。于是, △BCQ 和 △ABK 是顶角相等的两个等腰三角形,它们是相似的。因而, △BCQ 的腰与底之比也是 √19: 1 ,因此 BC 的长度是 1/√19。由对称性, AC 也等于 1/√19。也就是说,我们做出了长度为 1/√19的线段!接下来,找出 AC 的中点 D ,以及 BC 的中点 E ,作出平行四边形 CDME , M 就是 AB 的中点了。
当然,这需要 AB 的长度小于 2/√19,否则满足 AC = BC = 1/√19的点 C 是不存在的。
如果 AB 再长一些,怎么办呢?接下来的构造就真的具有冲击力了。当 AB 很长时,在 A 点附近取一个充分近的点 A1(具体地说, AA1< 1/√19)。然后,从 A 和 A1出发,不断作等边三角形,形成一个等边三角形点阵。然后从 A 点出发,在这个点阵中行走,每次都朝着某个方向连续走两个线段长。这样两步两步地走,最终总能找到一个离 B 足够近的点 C ,使得 BC < 2/√19。 AC 的中点 D 已经在点阵上了,而 BC 的中点 E 也能作出。作出平行四边形 CDME , M 点就是 AB 的中点了。