标签:using mat end const ase ace int friend space
#include <iostream>
#include <math.h>
using namespace std;
class newInt
{
public:
    int x;
    newInt(int x=0):x(x){}
    friend istream &operator>>(istream &is,newInt &n)
    {
        is>>n.x;
        return is;
    }
    friend ostream &operator<<(ostream &out,const newInt &n)
    {
        out<<n.x;
        return out;
    }
};
int length(newInt s)
{
    int counter=0;
    while(s.x)
    {
        s.x/=10;
        counter++;
    }
    cout<<counter<<endl;
    return counter;
}
newInt operator+(newInt &a,newInt &b)
{
    int minn=min(length(a),length(b));
    int maxx=max(length(a),length(b));
    int mm=maxx-minn;
    int sum=0;
    int aa=a.x;
    int bb=b.x;
    int tmp=minn;
    while(minn)
    {
        sum+=(aa%10+bb%10)%10*pow(10,tmp-minn);
        aa/=10;
        bb/=10;
        minn--;
    }
    if(aa!=0)
    {
        sum+=aa*pow(10,tmp);
    }
    else
    {
        sum+=bb*pow(10,mm);
    }
    return newInt(sum);
}
int main()
{
    int cases;
    newInt a, b, c;
    cin>>cases;
    for (int i = 0; i < cases; i++)
    {
        cin>>a>>b;
        c = a + b;
        cout<<a<<" + "<<b<<" = "<<c<<endl;
    }
    return 0;
}
标签:using mat end const ase ace int friend space
原文地址:https://www.cnblogs.com/-Asurada-/p/10945228.html