Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- void wypelnij_tablice(int* tablica, unsigned rozmiar)
- {
- for(unsigned i = 0; i < rozmiar; ++i)
- tablica[i] = 1 + rand() % 100;
- }
- void wypisz_tablice(int* tablica, unsigned rozmiar)
- {
- for(unsigned i = 0; i < rozmiar; ++i)
- cout << tablica[i] << '\t';
- cout << endl;
- }
- int main()
- {
- srand(static_cast<unsigned>(time(nullptr)));
- /*char znak = 'w';
- cout << znak << '\t' << static_cast<int>(znak) << endl;*/
- unsigned wielkosc;
- cout << "Podaj wielkosc tablicy: ";
- cin >> wielkosc;
- int* tablica = new int[wielkosc]; // dynamiczne alokowanie pamięci
- wypelnij_tablice(tablica, wielkosc);
- wypisz_tablice(tablica, wielkosc);
- // DODAWANIE WARTOSCI
- /*
- 1. tworzymy nową tablicę (tymczasową) o dotychczasowym rozmiarze
- 2. kopiujemy wszystkie wartości z tablicy do tablicy tymczasowej
- 3. zwalniamy pamięć dotychczasowej tablicy
- 4. do pierwotnego wskaźnika (tablica) przydzielamy nową tablicę o rozmiarze o 1 większym od dotychczasowego
- 5. do nowej tablicy kopiujemy wszystko z tablicy tymczasowej
- 6. na koniec tablicy wpisujemy wartość nowego elementu
- 7. zwalniamy pamięć przeznaczoną na tablicę tymczasową
- */
- // 1
- int* temp = new int[wielkosc];
- // 2
- for(unsigned i = 0; i < wielkosc; ++i)
- temp[i] = tablica[i];
- // 3
- delete[] tablica;
- // 4
- tablica = new int[wielkosc + 1];
- // 5
- for(unsigned i = 0; i < wielkosc; ++i)
- tablica[i] = temp[i];
- // 6
- tablica[wielkosc] = 100;
- // 7
- delete[] temp;
- ++wielkosc;
- wypisz_tablice(tablica, wielkosc);
- delete[] tablica; // zwolnienie pamięci
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement