高精度减高精度代码C++
时间: 2023-07-10 10:16:45 浏览: 139
高精度减法用C++实现
5星 · 资源好评率100%
以下是一个简单的C++高精度减法实现:
```cpp
#include<bits/stdc++.h>
using namespace std;
const int MAXN=1e6+5;
int a[MAXN],b[MAXN],c[MAXN];
char sa[MAXN],sb[MAXN];
int main(){
scanf("%s%s",sa,sb);
int la=strlen(sa),lb=strlen(sb);
for(int i=0;i<la;i++) a[i]=sa[la-i-1]-'0';
for(int i=0;i<lb;i++) b[i]=sb[lb-i-1]-'0';
int len=max(la,lb);
for(int i=0;i<len;i++){
c[i]+=a[i]-b[i];
if(c[i]<0){
c[i]+=10;
c[i+1]--;
}
}
while(len>1 && !c[len-1]) len--;
for(int i=len-1;i>=0;i--) printf("%d",c[i]);
return 0;
}
```
这个实现将两个高精度数转换为数组,然后按位进行减法操作,最后将结果数组转换为字符串输出。
阅读全文