思索的三部曲(猜数游戏)
同学们遇到了一个难题,往往会想到头昏脑胀,结果还是一无所获。等到在“题解”一类的书中或同学的练习簿里看到了它的解法,好像跑得满头大汗时吃了一杯冷饮,感觉着又痛快又惊异,不知不觉地会发出这样的疑问:“他怎样想出来的?”这疑问的答案,不要说从演式中找不出来,就是那些聪明的懂得它的解法的人也不会告诉你。他们并不是故意在卖关子,实在是无从说起的缘故。本来,思索一个问题的方法,不是可以抽象地、概括地用言语表达出来的;必须要经过不断地学习和实际的练习,然后才能逐渐的得到。因此我们不能认为学会了一个问题的做法;便算尽了学习的能事,最要紧的还是要学会思索问题的方法,养成良好的思索习惯。
教了二十多年数学,“题目要怎样去想?”这个问题,常常被人问到,每次都苦于无从说起,就是说也不会十分彻底。
在这当儿,我只好举出实例来作答复。下面的一个小小的猜数游戏,就是一个很好的实例。读者看了之后,对于思索数学问题应有怎样的过程,也许会知道一个大概。
记得在很多年以前,看见同学们玩着一种猜数的游戏。方法是你随便写下一个多位的整数,把这数中各位的数字加起来,从原数中减去这加得的和,然后在所得的差中留下任何一位数字,把其余各位数字随便颠倒地报告出来,他就能立刻猜到你留下的是哪一位数字。但遇到0是例外,不要留下,也不必报告出来。要说得明白一些,当然必须举一个例子。假定你写下的是65271,各位数字加起来,得21,相减得65250,留下2,报告出来的三位数字是6,5,5,他立刻会猜出你留下的数字是2。
我最初看到了,觉得很奇妙,于是开始样想:“根本不知道原数,单靠着报告的6,5,5三位数字,怎样会立刻猜出这留下的是2呢?要解决这一个问题,开头好像无从着手,但是一注意到报告的数字可以随便颠倒,就知道猜的方法同实际的数无关,只同各位数字有关—十位的5,实际的数是50,数字是5—;这是第一个关键,再注意到0可以不必报告,可见从报告的数字要猜出留下的数字来,只能用加或减的基本算法,绝对不会用到乘或除;因为用0做加数或减数是不发生影响的,所以尽可不必报告,但是乘除就完全两样了,这是第二个关键。于是任意假定各数,来作实地试验。先用前例的65271,再用55437,9889,365028,47965等分别做原数,如法炮制,各减去数字的和,都留下任意的一位,把其余各位——算是报告的——先用加法算出和数,连同留下的一位数字,列下一张表。
那报告出来的各位数字的和,同留下的数字有什么关系呢?很容易发现16+2=18,13+5=18,19+8=27,12+6=18,18+9=27,…它们的和18,27,…都是9的倍数。因此知道猜法的秘诀原来是这样:“把报告的各位数字加得一个和数,在9的倍数中选出一个比那和数略大的,相减就得;但和数刚正是9的倍数时,那么留下的数字就是9。”
上述游戏的谜是给打破了,不过这是从事实上观察得来的,只能说是应该要如此,究竟为什么要如此,这里还须作一个明确的回答。
就最初的例子考察,65271=60000+5000+200+70+1,根据倍数的原则:9的倍数的任何倍仍是9的倍数;9的倍数同9的倍数的和仍是9的倍数,可得
移项得65271-21=9的倍数,即65250=9的倍数。根据算术中的质因数检验法,知道65250既是9的倍数,那么各位数字的和也是9的倍数,即6+5+2+5=9的倍数。于是前举猜法的原理就不难彻底明白了。
这个数学游戏的思索过程是怎样的呢?第一步是要认清问题的关键,第二步是要由“知其然”而进到“知其所以然”,把它列举出来,好像是一套三部曲:
(一)想:这是怎么一回事?
(二)想:这是怎样做法的?
(三)想:为什么这样做就成功这么一回事?