列竖式进行多位数相乘时,相信大家都遇到过乘积超过一位数时,先写下个位数,然后需要黙记十位数加到下次的乘积中去,这是最令人讨厌和麻烦的一件事,如果黙记错了那就尴尬了。这里介绍一种新算法,这种算法的优点是不需要黙记两数相乘的十位数以及心算加上接下来两数相乘的个位数,而是直接写出两数相乘的结果。具体请看:
列竖式如图1,和传统的算法不一样,这里分成三行计算:
第一行:先将乘数的个位数6乘以被乘数的个数8,直接写下积48(与乘数、被乘数的数位对齐),不必象传统算法那样,只写个位数8,黙记十位数4;
接下来暂不计算乘数的个位数6与被乘数的十位数相乘,而是先计算乘数的十位数9与被乘数的十位数3相乘,直接写下积27,接写在48的前面(左边),得到竖式第一行的数2748;
这2748就是来自:个位乘个位,十位乘十位。
第二行:计算6×3,退一位写下18;
第三行:计算9×8,写下72与上一行的18对齐。
第二行与第三行可以说是并驾齐驱,分别来自:个位乘十位与十位乘个位。
最后,将三行的数对齐相加,即得38×96=3648.
这种算法显然比传统的算法轻松多了。
再看如下例子:
例1 计算:794×587.
第一行,将乘数的百位数与被乘数的百位数相乘,写下积35,将乘数的十位数与被乘数的十位数相乘,所得两位数的积(如果积为一位数,则十位数补0)72接写在35的后面,得3572,再将乘数的个位数与被乘数的个位数相乘,所得两位数的积(如果积为一位数,则十位数补0)28接写在3572的后面,得357228,这就是第一行的数。列竖式时,可以从个位数相乘开始写,与乘数的个位数对齐;
第二行,退一位,写下乘数的个位数7乘以被乘数的十位数9(简称“个乘十”,以下简称意思与此类似)所得两位数63(如果是一位数则十位数补0,以下同),将“十乘百”8×7所得的积56接写在63的前面,得:5663;
第三行,不退位,与第二行的计算是一样的,写下被乘数的“个乘十”4×8所得的两位数32,将“十乘百”9×5所得的积45接写在32的前面,得:4532;
第四行,退一位,写下“个乘百”7×7的积49;
第五行,不退位,写下“百乘个”5×4的积20;
将五行的数相加,即得794×587=466078.
例2 计算:3692×7184.
第一行进行的是从右到左依次接写“个乘个”08,“十乘十”7208,“百乘百”067208,“千乘千”21067208;
第二行进行的是退一位,从乘数的个位数开始,从右到左接写“个乘十”36,“十乘百”4836,“百乘千”34836;
第三行进行的与第二行一样,所不同的是从被乘数的个位数开始,仍然是从右到左依次接写“个乘十”16,“十乘百”0916,“百乘千”420916;
第四行退一位,进行乘数与被乘数的“个乘百”,“十乘千”,得:2424;
第五行不退位,与第四行一样,进行被乘数与乘数的“个乘百”,“十乘千”,得:6302;
第七行不退位,与第六行一样,进行被乘数与乘数的“个乘千”,得:14.
从上述算法可以发现:每行相乘都是从个位数开始与n位上的数相乘,直接写下两位数的乘积,然后接写十位数与(n+1)位上的数的乘积;换行时,遇到奇数行的退一位,偶数行的不退位。
这种乘法可以用口诀记为:
偶退一位奇对齐,个位始乘接乘积。
再看一例:计算:9208×467。