Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <ctime>
- #include <cstdlib>
- using namespace std;
- int main()
- {
- int rozmiar;
- srand(time(nullptr));
- cout << "Podaj rozmiar tablicy: ";
- cin >> rozmiar;
- int* tablica = new int[rozmiar];
- for(int i = 0; i < rozmiar; ++i)
- {
- tablica[i] = rand() % 100 + 1;
- cout << tablica[i] << '\t';
- }
- cout << endl;
- // zwiększamy rozmiar tablicy o 5. Dotychczasowe wartości muszą być zachowane, nowe elementy tablicy są równe 0
- // 1. tworzymy nową (tymczasową) tablicę dynamiczną o rozmiarze dotychczasowej
- // 2. zawartość dotychczasowej tablicy kopiujemy do nowej
- // 3. zwalniamy pamięć dotychczasowej tablicy
- // 4. na miejsce dotychczasowej tablicy tworzymy nową, o nowym rozmiarze
- // 5. zawartość tablicy tymczasowej kopiujemy do nowej
- // 6. zwalniamy pamięć tymczasowej tablicy
- // 7. przypisujemy wartości nowym elementom z nowej tablicy
- // 1.
- int* temp = new int[rozmiar];
- // 2.
- for(int i = 0; i < rozmiar; ++i)
- temp[i] = tablica[i];
- // 3.
- delete[] tablica; // zwolnienie pamięci
- // 4.
- tablica = new int[rozmiar + 5];
- // 5.
- for(int i = 0; i < rozmiar; ++i)
- tablica[i] = temp[i];
- // 6.
- delete[] temp;
- // 7.
- for(int i = rozmiar; i < rozmiar + 5; ++i)
- tablica[i] = 0;
- rozmiar += 5;
- for(int i = 0; i < rozmiar; ++i)
- {
- cout << tablica[i] << '\t';
- }
- delete[] tablica;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment