Pagini recente » Cod sursa (job #753244) | Cod sursa (job #172712) | Cod sursa (job #2959148) | Cod sursa (job #2440386) | Cod sursa (job #711029)
Cod sursa(job #711029)
#include<fstream>
#include<cstring>
using namespace std;
int main()
{
ifstream cin("adunare.in");ofstream cout("adunare.out");
char a[500000],b[500000],c[500000];int i,j,r=0,k=-1,lsa,lsb;
cin>>a>>b;
lsa=strlen(a);lsb=strlen(b);
if(a[0]=='-')
{
for(i=0;i<lsa;i++)
a[i]=a[i+1]*-1;
lsa--;
}
if(b[0]=='-')
{
for(i=0;i<lsb;i++)
a[i]=a[i+1]*-1;
lsb--;
}
for(i=0;i<lsa;i++)
a[i]>0?a[i]-=48:a[i]+=48;
for(i=0;i<lsb;i++)
b[i]>0?a[i]-=48:a[i]+=48;
i=lsa-1;j=lsb-1;
while(i>=0&&j>=0)
{
c[++k]=(a[i]+b[j]+r)%10;
r=(a[i]+b[j]+r)/10;
i--;j--;
}
if(i>=0)
while(i>=0)
{
c[++k]=(a[i]+r)%10;
r=(a[i]+r)/10;
i--;
}
if(j>=0)
while(j>=0)
{
c[++k]=(b[j]+r)%10;
r=(b[j]+r)/10;
j--;
}
if(r)
c[++k]=r;
for(;k>=0;k--)
cout<<(int)c[k];
}