#include <bits/stdc++.h>
using namespace std;
// `boyut` yerine belki sizeof ile bir şeyler yapılabilir ama basitlik için böyle yazdım.
void eleman_ekle(int *&dizi, int boyut, int eleman) {
// Yeni eleman için bir eleman fazla olacak şekilde hafızadan yeni alan tut.
int *yeni_dizi = new int[boyut + 1];
// Elemanları eski alandan yeniye taşı.
for (int i = 0; i < boyut; i++) {
yeni_dizi[i] = dizi[i];
}
// Eski alanı serbest bırak.
delete dizi;
// Diziyi yeni alana göstert.
dizi = yeni_dizi;
}
int main() {
// Rastgelelik için seed'i saniyeye bağlı tanımlıyorum.
srand(time(0));
cout << "Kac eleman eklensin? ";
int eleman_sayisi;
cin >> eleman_sayisi;
// https://w...content-available-to-author-only...s.org/measure-execution-time-function-cpp/
auto start = chrono::high_resolution_clock::now();
// Başta dizi boş. Dolu da olabilir ama.
int *dizi = new int[0];
for (int i = 0; i < eleman_sayisi; i++) {
int yeni_eleman = rand();
eleman_ekle(dizi, i, yeni_eleman);
}
auto end = chrono::high_resolution_clock::now();
auto gecen_zaman_ms = chrono::duration_cast<chrono::milliseconds>(end - start).count();
// Memory leak olmasın :)
delete dizi;
cout << eleman_sayisi << " eleman eklemek toplamda " << gecen_zaman_ms << " milisaniye surdu.\n";
}