最近在看《C专家编程》,这本书详细地介绍了C语言中的难点和易错点,看完该书,发现附录还有一个非常有趣的故事。现将该故事完整的摘抄。
轻松一下——如何用气压计测量建筑物的高度
有一个很早的故事,讲的是一位物理系学生寻找新奇的方法用气压计测量一幢建筑物的高度。Alexander Calandrain The Teaching of Elementary Science and Mathematics中引述了这个故事:
一位学生考试被判不及格,因为他拒绝使用老师所教的方法回答问题。当这名学生提出抗议时,学校指定我担任仲裁人。我来到教授的办公室,阅读了考题:“怎么在气压计的帮助下测量一幢高楼的高度。”
这位学生是这样回答的:“把气压计带到楼顶,用一个长绳系住。把气压计放低,直到触及地面,然后再提起来,测量绳子的长度。绳子的长度就是建筑物的高度。”
很明显,高分的回答应该是充分运用物理学的原理,但这个回答显然没有说明这一点。我提议给这个学生另一个机会回答这个问题,六分钟内让他用物理学的知识重新回答问题。
结果他只用了一分钟就交上了答案:“把气压计带到楼顶,倚在屋顶的边缘上,然后放开气压计,并用秒表进行计时。然后,运用物体下坠公式:S=1/2at^2计算建筑物的高度。”此时,我毫不迟疑地给了这位学生满分。
这位学生继续说出了3种运用气压计测量建筑物高度的方法:
在阳光灿烂的日子里,测量气压计的高度,气压计影子的高度以及建筑物影子的高度,然后运用简单的比例原理,计算出建筑物的高度。
带上气压计走上建筑物的楼梯,当你爬楼梯时,用气压计的高度在墙上做标记。到达楼顶后,数一下标记的数量,你就可以得到以气压计高度为单位的建筑物高度。
最后一种方法(也许最不可行)是把气压计送给建筑物的管理员,让他告诉你建筑物的高度。
当这个老掉牙的故事作为一个“科学难题”出现在Sun时,人们又重新激起了对它的热情,总共提出了16种新的用气压计测量建筑物高度的好方法。这些方法如下。
气压法
分别测量楼顶和楼底的气压,然后根据气压差计算大楼的高度。这个方法是这个问题最初设计时的标准答案,也是测量大楼高度最不精确的方法之一。
钟摆法
来到建筑物的顶部,用绳子系住气压计,把它放低到地面。然后晃动气压计,测量钟摆的摆动时间,根据摆动时间可以计算出钟摆的长度,也就是建筑物的高度。
贪婪法
把气压计当掉,换取一点种子基金。然后用连锁信方法(或者称之为神秘链方法)积累上一大笔钱。把这笔钱堆的跟大楼一样高,然后根据每张纸币的厚度和纸币的张数计算大楼的高度。这个方法并没有提及如何在警察闻讯赶来之前完成对大楼的测量。
黑手党法
用气压计作为武器,威逼大楼的管理员说出大楼的高度。
弹道法
在地面用一架迫击炮把气压计送入半空,让它正好达到楼顶的高度。你可能需要进行几次距离修正发射以获得刚好能够把气压计送到大楼高度的发射方法。运用标准弹道计算表,你可以计算出这次弹道发射的高度,也就是大楼的高度。
镇纸法
把气压计作为镇纸压在建筑物的设计图纸上,然后从图纸上找出建筑物的高度。
音速法
从大楼的顶部把气压计扔下来,让其做自由落体,测量气压计撞击地面和你听到撞击声的时间差。在实际可行的距离内,视觉传递的时间可忽略不计,而声音的传递速度(在标准温度和气压条件下是340m/s)是已知的,根据上面这些数据可以计算出大楼的高度。
反射法
把气压计的玻璃面作为镜子,测量镜面反射亮光从楼顶到地面的来回时间,由于光速是一个已知量,所以大楼的高度也可以据此测出。
商业法
卖掉气压计用这笔钱买一些适当的仪器测量大楼的高度。
类比法
一根绳子系住气压计,把绳子绕在一个小型的发电机的轴上。然后把气压计从大楼顶上扔下来,绳子就会使发电机转动。测量气压计从楼顶掉到地面期间发电机所发的电。发电机产生的电能是和轴旋转的圈数是成正比的,根据这些数据可以算出楼顶到地面的高度。
三角法
在地面上选一点,它和大楼的距离是已知的。带上气压计和一个量角器来到大楼的顶部,等待太阳达到水平线。然后把气压计当作镜子,把一束日光引到先前所设定的地点,用量角器测量气压计的角度,然后用三角学原理计算大楼高度。
比例法
测量气压计高度。叫一个朋友,并带上一把卷尺。趴在大楼外已知距离的一点,气压计放在你和大楼之间。调整气压计的位置,从你看上去气压计的上端正好和楼顶相平。然后叫你的朋友测量你的眼睛距离气压计的距离,最后根据比例原理计算出大楼高度。
照相法
从大楼外已知距离的地点支起三脚架,架上照相机。然后把气压计放在与照相机距离已知的地方,拍下照片。根据照片中间气压计和大楼的相对高度,你可以计算出大楼的实际高度。
重力法I
用长绳系住气压计,从大楼上挂下来直到地面。测量钟摆的摆动周期,根据重力加速度的差别计算大楼高度。
重力法II
在大楼的顶部和底部分别用弹簧秤测量气压计重量(不能用天平秤),两个重量应该有所差别,这是由于重力加速度的差异引起的(一位读者告诉我Lacoste Romberg重力计能够提供准确结果所需要的精度)你可以根据这两个读数之差计算出大楼高度。
卡路里法
把气压计从楼顶扔下来,掉到地面一个装有水的容器。容器的开口应当尽量小,尽可能防止水溅出。水温的升高是气压计的机械能转化为热能的结果,根据水温的升高的度数可以计算出气压计到达地面的势能,进一步可以计算大楼高度。
你是不是认为这样的问题只会在代数学里出现。