【TOJ 5235】C++实验:简单运算(重载输入输出运算符的模板)

描述

实现一个简单的C++整数类,并重载main函数里的输入/输出、加/减/乘/除运算符函数。

主函数里的代码已经给出,请补充完整,提交时请勿包含已经给出的代码。 

class Integer;
int main()
{
    Integer a, b;
    while(cin>>a>>b)
    {
        cout<<a+b<<" "<<a-b<<" "<<a*b<<" "<<a/b<<endl;
    }
    return 0;
}

输入

多组数据,每组输入两个整数a和b,题目保证b不为0。

输出

输出加、减、乘、除的结果,其中除法操作为取整。

样例输入

1 2
3 2

样例输出

3 -1 2 0
5 1 6 1

#include<bits/stdc++.h>
using namespace std;
class Integer{
public:
    int a;
    Integer(int a):a(a){}
    Integer():a(0){}
    friend ostream &operator<<(ostream &os,const Integer&x)
    {
        os<<x.a;
        return os;
    }
    friend istream &operator>>(istream &is,Integer&x)
    {
        is>>x.a;
        if(!is)
            x=Integer();
        return is;
    }
    Integer operator+(const Integer&x)const
    {
        Integer t;
        t.a=this->a+x.a;
        return t;
    }
    Integer operator-(const Integer&x)const
    {
        Integer t;
        t.a=this->a-x.a;
        return t;
    }
    Integer operator*(const Integer&x)const
    {
        Integer t;
        t.a=this->a*x.a;
        return t;
    }
    Integer operator/(const Integer&x)const
    {
        Integer t;
        t.a=this->a/x.a;
        return t;
    }
};
class Integer;
int main()
{
    Integer a, b;
    while(cin>>a>>b)
    {
        cout<<a+b<<" "<<a-b<<" "<<a*b<<" "<<a/b<<endl;
    }
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/kannyi/p/9049684.html