主要和高精度加法差不多,只不过把进位变成了借位
借位:
for(int i=0;i<len;i++)
if((a[i]-=b[i])<0){
a[i+1]--;
a[i]+=10;
}
还有就是要考虑负数,这个操作比较简单,就不贴代码了。
我们都知道,如果a-b是负数,那么我们只需要求b-a(因为这两者互为相反数),再添个负号就ok了,这样一说,处理负数也就会了。
主要和高精度加法差不多,只不过把进位变成了借位
借位:
for(int i=0;i<len;i++)
if((a[i]-=b[i])<0){
a[i+1]--;
a[i]+=10;
}
还有就是要考虑负数,这个操作比较简单,就不贴代码了。
我们都知道,如果a-b是负数,那么我们只需要求b-a(因为这两者互为相反数),再添个负号就ok了,这样一说,处理负数也就会了。