//两个1000位数相加
#include <iostream.h>
void main()
...{
int a1[1000/3+1];//加数
int a2[1000/3+1];//被加数
int sum[1000/3+2];//结果
for(int j=0;j<1000/3+1;j++)//初始化为最大
...{
a1[j]=999;
a2[j]=999;
}
for( j=0;j<1000/3+1;j++)
cout<<a1[j];
cout<<endl;
for( j=0;j<1000/3+1;j++)
cout<<a2[j];
cout<<endl;
for(int i=0;i<1000/3+2;i++)
sum[i]=0;
//从低位开始相加
for(i=0;i<1000/3+1;i++)
...{
sum[i]+=a1[i]+a2[i];
sum[i+1]=sum[i]/1000;
sum[i]-=sum[i+1]*1000;
}
//打印结果
for( i=1000/3+1;i>=0;i--)
cout<<sum[i];
cout<<endl;
}
本文介绍了一种处理大数相加的算法实现,通过C++编程语言演示了如何操作超过常规整数范围的1000位数进行加法运算。文章通过定义三个数组分别存放两个加数及求和结果,并采用逐位相加、进位处理的方法完成了计算。
6735

被折叠的 条评论
为什么被折叠?



