MeehoweCK

Untitled

Oct 23rd, 2020
869
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Tablica
  6. {
  7. private:
  8.     int* dane;
  9.     unsigned rozmiar;
  10. public:
  11.     Tablica();          // tworzy pusty obiekt (pustą tablicę)
  12.     ~Tablica();
  13.     explicit Tablica(unsigned);  // tworzy tablicę o podanym rozmiarze
  14.     void dodaj_element(int);
  15.     void wypisz();
  16.     int get_wartosc(unsigned);
  17. };
  18.  
  19. Tablica::Tablica() : dane(nullptr), rozmiar(0) {}
  20.  
  21. /*
  22. Tablica::Tablica()
  23. {
  24.     dane = nullptr;
  25.     rozmiar = 0;
  26. }
  27. */
  28.  
  29. Tablica::Tablica(unsigned size) : dane(new int[size]), rozmiar(size)
  30. {
  31.     for(unsigned i = 0; i < size; ++i)
  32.         dane[i] = 0;
  33. }
  34.  
  35. void Tablica::dodaj_element(int num)
  36. {
  37.     //1.
  38.     int* temp = new int[rozmiar];
  39.  
  40.     //2.
  41.     for(unsigned i = 0; i < rozmiar; ++i)
  42.         temp[i] = dane[i];
  43.  
  44.     //3.
  45.     delete[] dane;
  46.  
  47.     //4.
  48.     dane = new int[rozmiar + 1];
  49.  
  50.     //5.
  51.     for(unsigned i = 0; i < rozmiar; ++i)
  52.     {
  53.         dane[i] = temp[i];
  54.     }
  55.  
  56.     //6.
  57.     delete[] temp;
  58.  
  59.     //7.
  60.     dane[rozmiar] = num;
  61.  
  62.     rozmiar++;
  63. }
  64.  
  65. void Tablica::wypisz()
  66. {
  67.     for(unsigned i = 0; i < rozmiar; i++)
  68.     {
  69.         cout << dane[i] << " ";
  70.     }
  71. }
  72.  
  73. Tablica::~Tablica()
  74. {
  75.     delete[] dane;
  76.     cout << "Zniszczono tablice";
  77. }
  78.  
  79. int Tablica::get_wartosc(unsigned nr)
  80. {
  81.     return dane[nr];
  82. }
RAW Paste Data