此算法适用于位数比较大的数字做乘法。
以例子的形式进行进一步说明:
例一:求12*34
步骤:
- 首先将两个数字的个位十位分离
- 将两个数字的十位数字相乘1 * 3 = 3
- 将两个数字的个位数字相乘2 * 4 = 8
- 将两个数字的个位与十位相加 1 + 2 = 3,3 + 4 = 7
- 将两个数字的数位和相乘3 * 7 = 21
- 用步骤5的结果减去步骤2和步骤3的结果21 - 3 - 8 = 10
- 将数字按照数字权顺序相加
3
10
+ 8
-----------------------
408
例二:求123*456
步骤:
- 首先将两个数字进行分组为12 3, 45 6
- 将两个数字的高位组相乘12 * 45 = 540
- 将两个数字的低位组相乘3 * 6 = 18
- 将两个数字的高位组与低位组相加12 + 3 = 15, 45 + 6 = 51
- 将两个数字的加和相乘15 * 51 = 765
- 用步骤5的结果减去步骤2和步骤3的结果765 - 540 - 18 = 207
- 将数字按照数字权顺序相加
540
207
+ 18
---------------------
= 56088
例三:求123*456
步