Advertisement
Guest User

Untitled

a guest
Jan 20th, 2020
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.42 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class NrComplex
  5. { double re, im;
  6. public:
  7.  
  8.     NrComplex()
  9.     {
  10.         re = im = 0;
  11.     }
  12.     NrComplex(double r, double i)
  13.     {
  14.         re = r;
  15.         im = i;
  16.     }
  17. void Afisare()
  18. {
  19.     cout << re << " + " << im << "i" << endl;
  20. }
  21. friend NrComplex operator+(NrComplex,NrComplex);
  22. friend NrComplex operator*(NrComplex,NrComplex);
  23. friend NrComplex operator*(NrComplex,double);
  24. friend NrComplex operator*(double,NrComplex);
  25. friend NrComplex operator~(NrComplex);
  26. };
  27.  
  28. NrComplex operator+(NrComplex nr1, NrComplex nr2)
  29. { NrComplex tmp;
  30.  
  31. tmp.re = nr1.re + nr2.re;
  32. tmp.im = nr1.im + nr2.im;
  33. return tmp;
  34.  
  35. }
  36.  
  37. NrComplex operator*(NrComplex nr1, NrComplex nr2)
  38. {
  39.     NrComplex tmp;
  40.     tmp.re = nr1.re * nr2.re - nr1.im * nr2.im;
  41.     tmp.im = nr1.re * nr2.im + nr1.im * nr2.re;
  42.     return tmp;
  43.  
  44. }
  45. NrComplex operator*(NrComplex nr1, double n)
  46. {
  47.    NrComplex tmp;
  48.    tmp.re = nr1.re * n;
  49.    tmp.im = nr1.im;
  50.    return tmp;
  51. }
  52.  
  53. NrComplex operator*(double n, NrComplex nr1)
  54. {
  55.    NrComplex tmp;
  56.    tmp.re = n * nr1.re;
  57.    tmp.im = nr1.im;
  58.    return tmp;
  59.    
  60. }
  61.  
  62.  
  63. NrComplex operator~(NrComplex nr1)
  64. {
  65.     NrComplex tmp;
  66.     tmp.re = nr1.re;
  67.     tmp.im = - nr1.im;
  68.     return tmp ;
  69. }
  70.  
  71. int main()
  72. {
  73.     NrComplex ob(2.5, 3.4);
  74.     NrComplex ob2;
  75.     ob2 = ob * 3;
  76.     ob2.Afisare();
  77.     ob2 = 3 * ob;
  78.     ob2.Afisare();
  79.     return 0;
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement