#include<iostream>
using namespace std;
#include<string.h>
const int MAXN=30;
string Change(char num[])
{
int len=strlen(num);
string reu=num;
return reu;
}
string Sum(string a,string b)
{
if(a.length()<b.length())
{
string temp=b;
b=a;
a=temp;
}
int i,j;
for(i=a.length()-1,j=b.length()-1;i>=0;i--,j--)
{
a[i]=char(a[i]+(j>=0?(b[j]-'0'):0));
if(a[i]-'0'>=10)
{
a[i]=(a[i]-'0')%10+'0';
if(i)
a[i-1]++;
else
a="1"+a;
}
}
return a;
}
string Dec(string a,string b)
{
bool flag=1;
if(a.length()==b.length())
{
if(a<b)
{
flag=0;
string temp=b;
b=a;
a=temp;
}
}
else
if(a.length()<b.length())
{
flag=0;
string temp=b;
b=a;
a=temp;
}
int i,j;
for(i=a.length()-1,j=b.length()-1;i>=0;i--,j--)
{
a[i]=char(a[i]-(j>=0?b[j]-'0':0));
if(a[i]-'0'<0)
{
a[i]=char(a[i]+10);
a[i-1]--;
}
}
int shouwei=-1;
for(i=0;i<a.length();i++)
{
if(a[i]-'0'!=0)
{
shouwei=i;
break;
}
}
if(shouwei!=-1)
{
char num[MAXN];
for(i=shouwei,j=0;i<a.length();i++,j++)
num[j]=a[i];
num[j]='\0';
a=num;
if(!flag)
a="-"+a;
}
else
a="0";
return a;
}
string Multiply(string a,string b)
{
}
int main()
{
string a,b;
while(cin>>a>>b)
{
cout<<"a + b = "<<Sum(a,b)<<endl;
cout<<"a - b = "<<Dec(a,b)<<endl;
}
return 0;
}
大数类
最新推荐文章于 2021-12-26 03:06:06 发布