MeehoweCK

Untitled

Jan 14th, 2021
475
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <ctime>
  4.  
  5. using namespace std;
  6.  
  7. // program tworzący tablicę dynamiczną 8-elementową (z losowymi wartościami liczb naturalnych), a następnie zwiększający rozmiar tablicy do 9
  8.  
  9. void wypelnij_tablice(int* tablica, int rozmiar)
  10. {
  11.     srand(static_cast<unsigned>(time(nullptr)));
  12.     for(int i = 0; i < rozmiar; ++i)
  13.         tablica[i] = rand() % 101;
  14. }
  15.  
  16. void wypisz_tablice(int* tablica, int rozmiar)
  17. {
  18.     for(int i = 0; i < rozmiar; ++i)
  19.         cout << tablica[i] << '\t';
  20.     cout << endl;
  21. }
  22.  
  23. int main()
  24. {
  25.     int* tablica = new int[8];
  26.     wypelnij_tablice(tablica, 8);
  27.     wypisz_tablice(tablica, 8);
  28.  
  29.     // POWIĘKSZANIE TABLICY
  30.     // 1. stworzenie pomocniczej tablicy dynamicznej o dotychczasowym rozmiarze
  31.     int* temp = new int[8];
  32.     // 2. skopiowanie wartości z tablicy głównej do tablicy pomocniczej
  33.     for(int i = 0; i < 8; ++i)
  34.         temp[i] = tablica[i];
  35.     // 3. zwolnienie pamięci z tablicy głównej
  36.     delete[] tablica;
  37.     // 4. do wskaźnika tablica przypisujemy nową tablicę o rozmiarze o 1 większym
  38.     tablica = new int[9];
  39.     // 5. skopiowanie wartości z tablicy pomocniczej do nowej tablicy głównej
  40.     for(int i = 0; i < 8; ++i)
  41.         tablica[i] = temp[i];
  42.     // 6. zwolnienie pamięci z tablicy pomocniczej
  43.     delete[] temp;
  44.     // 7. dodanie elementu na ostatni element do tablicy głównej
  45.     tablica[8] = 100;
  46.  
  47.     wypisz_tablice(tablica, 9);
  48.     delete[] tablica;
  49.  
  50.     return 0;
  51. }
RAW Paste Data