Advertisement
Guest User

zadanie_operatory

a guest
Nov 18th, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.44 KB | None | 0 0
  1. // lab7.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6. #include <cmath>
  7. #include <random>
  8. #include <chrono>
  9.  
  10. using namespace std;
  11.  
  12. class Zespolona{
  13.  
  14.     float re;
  15.     float im;
  16. public:
  17.     Zespolona(float re_1 = 0.0, float im_1 = 0.0) : re{ re_1 }, im{ im_1 }
  18.     {}
  19.     float get_re_1() const{ return re; }
  20.     float get_im_1() const{ return im; }
  21.     void set_re_1(float _re) { re = _re; }
  22.     void set_im_1(float _im) { im=_im; }
  23.  
  24.     Zespolona& operator++()
  25.     {
  26.         ++re;
  27.         ++im;
  28.         return *this;
  29.     }
  30.     Zespolona& operator=(const Zespolona& rhs){
  31.         if (this != &rhs){
  32.             re = rhs.re;
  33.             im = rhs.im;
  34.         }
  35.         return *this;
  36.     }
  37. };
  38.  
  39.     Zespolona& operator+(const Zespolona& lhs, const Zespolona& rhs){
  40.         return Zespolona(lhs.get_re_1() + rhs.get_re_1(), lhs.get_im_1() + rhs.get_im_1());
  41.     }
  42.  
  43.     istream& operator>>(istream& in, Zespolona& rhs){
  44.         float re_1;
  45.         cin >> re_1;
  46.         rhs.set_re_1(re_1);
  47.  
  48.         float im_1;
  49.         cin >> im_1;
  50.         rhs.set_im_1(im_1);
  51.         return in;
  52.  
  53.     }
  54.     ostream& operator<<(ostream& out, Zespolona& rhs){
  55.         out << rhs.get_re_1()<< " +j" << rhs.get_im_1();
  56.         return out;
  57.     }
  58.  
  59. int main(int argc, char*argv[] )
  60. {
  61.     Zespolona a(1, 2);
  62.     Zespolona b(0, 2);
  63.     Zespolona c = a + b;
  64.     cout << c;
  65.     cout << "wpisz liczbe zespolona, podając dwa argumenty" << endl;
  66.     Zespolona d;
  67.     cin >> d;
  68.     Zespolona e = ++d;
  69.     cout << "po preinkrementacji  " << e << endl;
  70.  
  71.  
  72.     system("pause");
  73.     return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement