rendered paste body#include <cstdlib>#include <iostream>using namespace std;class ABC { private: double* tab; unsigned int ilosc; public: ABC(unsigned int); ABC(const ABC&); void operator+=(const ABC&); ABC operator--(int); friend ABC operator+(const float w, ABC&); ABC& operator=(const ABC& wzor); void wypisz(); void zapelnij(double x); };ABC :: ABC(unsigned int ile = 5){ilosc = ile;tab = new double[ilosc];for(int i=0; i<ilosc; i++)tab[i]=0;}ABC :: ABC(const ABC& wzor){ilosc = wzor.ilosc;tab = new double[ilosc];for(int i=0; i<ilosc; i++)tab[i] = wzor.tab[i];}void ABC :: operator+=(const ABC& wzor){ if(ilosc == wzor.ilosc){for(int i=0; i<ilosc; i++)tab[i] = wzor.tab[i] + tab[i]; } elseif(ilosc > wzor.ilosc){for(int i=0; i<wzor.ilosc; i++)tab[i] = wzor.tab[i] + tab[i]; } elseif(ilosc < wzor.ilosc){double* tmp = new double[wzor.ilosc];for(int i=0; i<ilosc; i++)tmp[i] = wzor.tab[i]+tab[i];for(int i=ilosc; i<wzor.ilosc; i++)tmp[i] = wzor.tab[i]; tab = tmp;ilosc = wzor.ilosc; }}ABC ABC :: operator--(int){ABC tmp(ilosc);for(int i=0; i<ilosc; i++)tmp.tab[i] = tab[i]-1;return tmp; }ABC operator+(const float w, ABC& obj){ABC tmp(obj.ilosc);for(int i=0; i<obj.ilosc; i++)tmp.tab[i] = obj.tab[i]+w;return tmp;}ABC& ABC :: operator=(const ABC& wzor){delete [] tab;tab = new double[wzor.ilosc];for(int i = 0; i< wzor.ilosc; i++)tab[i] = wzor.tab[i];ilosc = wzor.ilosc;return *this; }void ABC :: wypisz(){cout<<"ILOSC ELEM: "<<ilosc<<endl;for(int i = 0; i<ilosc; i++)cout<<tab[i]<<" ";cout<<endl; }void ABC :: zapelnij(double x){for(int i = 0; i<ilosc; i++)tab[i] = x; }int main(int argc, char *argv[]){ ABC ob1, ob2(30); ob1.wypisz(); ob2.wypisz(); ABC ob3(ob2); ob3.wypisz(); ob1.zapelnij(5); ob2.zapelnij(2); ob1.wypisz(); ob2.wypisz(); ob1+=ob2; ob1.wypisz(); ob2 = 1.0f + ob3; ob2.wypisz(); ob3 = ob1--; ob3.wypisz(); system("PAUSE"); return EXIT_SUCCESS;}