diff --git a/cnumber.cpp b/cnumber.cpp index 738e42e..86a78b9 100644 --- a/cnumber.cpp +++ b/cnumber.cpp @@ -3,7 +3,8 @@ int main() { - cnumber z(1, -7); + cnumber a(-1, 4); + cnumber b(4, -7); - cout << z << endl; + cout << "a = " << a << " b = " << b << " a + b = " << a + b << endl; } diff --git a/cnumber.hpp b/cnumber.hpp index 33ceb3b..90b2c54 100644 --- a/cnumber.hpp +++ b/cnumber.hpp @@ -18,9 +18,13 @@ class cnumber { signi = get_sign(i); } + cnumber operator+(const cnumber& that) { + cnumber z(that.r + this->r, that.i + this->i); + return z; + } friend ostream &operator<<( ostream &os, const cnumber &z ) { - os << z.r << (z.signi ? '+' : '-') << 'i' << (z.signi ? z.i : z.i * -1); + os << z.r << (z.signi ? '+' : '\0' ) << z.i << 'i'; return os; }