Pagini recente » Cod sursa (job #1333216) | Cod sursa (job #1070913) | Cod sursa (job #613168) | Cod sursa (job #1754652) | Cod sursa (job #1125231)
#include<fstream>
#include<math.h>
#include<iostream>
using namespace std;
int main()
{
char a[70],b[70],x;
int i,j,lna,lnb,nr,dif,limit,t,suma[71];
ifstream f("adunare.in");
ofstream g("adunare.out");
i=1;j=1;nr=0;
while(f>>x)
{
while(f.peek()!='\n' && nr==0)
{
a[i]=x;
i++;
f>>x;
}
if(nr==0)
a[i]=x;
nr++;
b[j]=x;
j++;
}
lna=i;
lnb=j-1;
for(i=2;i<j;i++)
b[i-1]=b[i];
lnb--;
dif=fabs(lna-lnb);
while(dif!=0)
{
if(lna>lnb)
{
for(i=lnb;i>=1;i--)
b[i+1]=b[i];
lnb++;
b[1]='0';
}
else
{
for(i=lna;i>=1;i--)
a[i+1]=a[i];
lna++;
a[1]='0';
}
dif--;
}
limit=lnb;
t=0;
for(i=limit;i>=1;i--)
{
if(i==1)
suma[i]=int(a[i])-48+int(b[i])-48+t;
else
if(int(a[i])-48+int(b[i])-48+t<10)
{
suma[i]=int(a[i])-48+int(b[i])-48+t;
t=0;
}
else
{
suma[i]=int(a[i])-48+int(b[i])-48+t-10;
t=1;
}
}
for(i=1;i<=limit;i++)
g<<suma[i];
f.close();
g.close();
return 0;
}