逆向思考:从最后一步退回去
从已知结果恢复上一状态,说明为什么反向运算和运算次序都要反过来,并用正向计算核对。
题目
一个数先乘 3,再加 5,最后除以 2,得到 16。这个数原来是多少?
先备知识
这课需要用到加减、乘除,以及“互相还原”的关系:一个数加上 5 后,减去 5 就回到原数;乘上 3 后,除以 3 就回到原数。把计算倒过来还原,叫作做逆运算。这道题可以直接用这些关系推理,不需要先设未知数列方程。
例题答案:原来的数是 9。
起点不知道,可以从哪里开始?
从开头算,会遇到“谁乘 3”的问题:原数还不知道,计算无法推进。结尾却给出了确定的 16。值得先找的是:紧挨着 16 的那一步做了什么? 原来最后除以了 2。一个数除以 2 得到 16,除之前就是两个 16,也就是 32。于是我们先恢复了离已知结果最近的状态。
沿着原来的路,一步一步退回
恢复到 32 后,先停一下:32 对应原过程中哪个位置?它是“加 5”之后、“除以 2”之前的数。要继续向前退,就要撤销加 5,所以减去 5 得到 27。
27 又是哪一步的结果?它是原数乘 3 后的数。把这个结果平均分成 3 份,每份就是原数,因此得到 9。
也可以合成一个算式。括号记录的是退回的次序,不能随意省掉:
为什么不能只把运算符号换一下?
如果看到原来先乘 3,就从 16 开始先除以 3,虽然选到了乘 3 的逆运算,撤销的时机却不对。16 已经经历了后面的加 5 和除以 2,它不是“刚乘完 3”的结果。必须先清除后两步的影响,才能还原最早那一步。
算出原数后,沿题目规定的方向走一遍,检查每一步都对应原条件:
什么时候能用这条思路?
关键是每一步的操作、次序已知,而且能确定地还原。这里乘除的数都不为零,能够逆向恢复。如果某一步是乘 0,不同的原数都会变成 0,只凭结果就无法找回唯一原数。倒着算有依据的前提,是信息没有在途中丢失。
自测:顺序变了,倒推还能照抄吗?
仍然得到 16,但操作改为“先加 5,再乘 3,最后除以 2”。先说倒推的第一步和第二步各是什么,再求原数。为什么不能沿用例题的整条倒推算式?
展开核对答案与理由
先乘 2,得到 32;这时要撤销的是乘 3,所以接着除以 3,最后才减去 5。第二步恢复的对象已经变了,不能继续先减 5。
原数可以是分数,题目没有要求它是整数。核对:它加 5 得到 ;再乘 3 得到 32,最后除以 2 得到 16。真正要迁移的是“从最后一步按逆序还原”,而不是记住一串固定符号。