0
已解决
0
已采纳
郑怡翔
初级天翼
初级天翼
给你个高精度模板,自己改可以吗?
郑怡翔在2018-08-10 20:49:21追加了内容
函数体:
int a[100010],b[100010],c[100010];
string s1,s2;
void jiafa()
{
c[0]=max(a[0],b[0]);
int h,jw=0;
for(int i=1;i<=c[0];i++)//加法
{
h=a[i]+b[i]+jw;
c[i]=h%10;
jw=h/10;
}
if(jw!=0)//判断位数
{
c[0]++;
c[c[0]]=jw;
}
}
for(int i=1;i<=a[0];i++)//转换
a[i]=s1[a[0]-i]-'0';
for(int i=1;i<=b[0];i++)
b[i]=s2[b[0]-i]-'0';
jiafa();//做加法
for(int i=c[0];i>=1;i--)//倒序输出
cout<<c[i];
郑怡翔在2018-08-10 20:50:09追加了内容
模板够多了,再多就整段代码了,我可不想被举报!!!
别举报,我没有整段代码!!!
0
0
0
0
赵逸凡
初级启示者
初级启示者
void Plus()
{ w[0]=max(c[0],d[0]);
int jw=0,h;
for(int i=1;i<=w[0];i++)
{
h=jw+c[i]+d[i];
w[i]=h%10;
jw=h/10;
}
if(jw!=0)
{
w[0]++;
w[w[0]]=jw;
}
}
int main()
{
cin>>a>>b;
c[0]=a.size();d[0]=b.size();
for(int i=1;i<=c[0];i++)c[i]=a[c[0]-i]-'0';
for(int i=1;i<=d[0];i++)d[i]=b[d[0]-i]-'0';
Plus();
for(int i=w[0];i>=1;i--)
{
cout<<w[i];
}
return 0;
}
內似部分代码,自己改。
0