From b2b1733fec263da708050275b4feaf08d684fedd Mon Sep 17 00:00:00 2001 From: mickenordin Date: Sat, 18 Jun 2016 20:21:18 +0200 Subject: [PATCH] Also multiplication --- cnumber.cpp | 5 +++-- cnumber.hpp | 6 +++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/cnumber.cpp b/cnumber.cpp index 86a78b9..868dfdf 100644 --- a/cnumber.cpp +++ b/cnumber.cpp @@ -3,8 +3,9 @@ int main() { - cnumber a(-1, 4); - cnumber b(4, -7); + cnumber a(1, -3); + cnumber b(2, 5); cout << "a = " << a << " b = " << b << " a + b = " << a + b << endl; + cout << "a = " << a << " b = " << b << " a * b = " << a * b << endl; } diff --git a/cnumber.hpp b/cnumber.hpp index 90b2c54..d2ed41c 100644 --- a/cnumber.hpp +++ b/cnumber.hpp @@ -18,10 +18,14 @@ class cnumber { signi = get_sign(i); } - cnumber operator+(const cnumber& that) { + cnumber operator+(const cnumber &that) { cnumber z(that.r + this->r, that.i + this->i); return z; } + cnumber operator*(const cnumber &that) { + cnumber z( (that.r * this->r ) - (that.i * this->i) , (that.r * this->i) + (this->r * that.i) ); + return z; + } friend ostream &operator<<( ostream &os, const cnumber &z ) { os << z.r << (z.signi ? '+' : '\0' ) << z.i << 'i';