Cerința
Ai primit definiția clasei de mai jos. Implementează toate metodele clasei.
class Complex { // i - partea imaginara, r - partea reala int i, r; public: // constructor stabileste valoare partii reale si acelei imaginare Complex(int pr, int pi); // constructor creeaza numarul complex nul Complex(); // seteaza valorile partii reale si a celei imaginare void set(int pr, int pi); //returneaza modulul double modul(); //returneaza partea reala int real(); //returneaza partea imaginara int imag(); //supraincarcare operator pentru afisarea numarului complex friend ostream& operator<<(ostream&, const Complex&); // supraincarcare operator adunare Complex operator +(Complex ); // supraincarcare operator scadere Complex operator -(Complex ); // supraincarcare operator inmultire Complex operator *(Complex ); };
Codul scris de tine va fi încărcat într-un program de forma:
#include <iostream> #include <cmath> using namespace std; class Complex { // i - partea imaginara, r - partea reala int i, r; public: // constructor stabileste valoare partii reale si acelei imaginare Complex(int pr, int pi); // constructor creeaza numarul complex nul Complex(); // seteaza valorile partii reale si a celei imaginare void set(int pr, int pi); //returneaza modulul double modul(); //returneaza partea reala int real(); //returneaza partea imaginara int imag(); //supraincarcare operator pentru afisarea numarului complex friend ostream& operator<<(ostream&, const Complex&); // supraincarcare operator adunare Complex operator +(Complex ); // supraincarcare operator scadere Complex operator -(Complex ); // supraincarcare operator inmultire Complex operator *(Complex ); }; // codul scris de tine int main() { Complex a, b(4,5),c; int x, y; cin >> x >> y; a.set(x,y); cout << a.modul()<<" "<< a*b << " " << a+b << " " << a-b; return 0; }
Exemplul 1:
Intrare
4 5
Ieșire
6.40312 -9+40i 8+10i 0
Explicație
S-a afișat modulul numărului complex 4+5i, produsul, suma și diferența numerelor complexe 4+5i și 4+5i.
Exemplul 2:
Intrare
4 -5
Ieșire
6.40312 41 8 -10i
Explicație
S-a afișat modulul numărului complex 4-5i, produsul, suma și diferența numerelor complexe 4-5i și 4+5i.