高精度数的乘法和除法

高精度数的乘法:

补充:若两个数位数分别为la和lb,则两数相乘后结果的位数至少为la+lb-1,如果最高位有进位,则结果的位数为la+lb。

思路:先计算,再一次性进位。

代码:

 1 for(int i = 0; i < la; i++)
 2     for(int j = 0; j < lb; j++)
 3         c[i+j] += a[i]*b[j]; 
 4 // 这一步为什么是i+j,可以列个竖式随便找两个数计算一下,就能发现规律了
 5 for(int i = 0; i < la+lb; i++)
 6 {
 7     if(c[i] >= 10)
 8     {
 9         c[i+1] += c[i]/10;
10         c[i] = c[i]%10;
11     }
12 }

高精度数的除法:

Pass

posted @ 2020-08-04 10:26  不敢说的梦  阅读(191)  评论(0)    收藏  举报