Другие языки программирования и технологии

нужна помощь нужно разрешить задачу на С + +

привет всем
помогите выяснить проблему
нужно разрешить задачу на С + +
Написать программу, которая позволяет увеличивать размер динамического массива во время выполнения программы.
Заранее большое спасибо)
// Наталя_Завадська_2011-12-20
#include <iostream>
#include <ctime>
#include <conio.h>
using namespace std;
int main()
{
srand((unsigned) time(NULL));
int size, newsize;
cout << "\n Enter size: "; cin >> size;
int * a = new int [size];
int * temp = new int [size];
for (int n = 0; n < size; n++)
{
a[n] = rand() % 9 + 1;
cout << ' ' << a[n];
}
cout << endl;
do
{
cout << "\n Enter new size: "; cin >> newsize;
for (int n = 0; n < size; n++) temp[n] = a[n];
a = new int [newsize];
for (int n = 0; n < newsize; n++)
{
if (n < size && n < newsize)
{
a[n] = temp[n];
cout << ' ' << a[n];
}
else
{
a[n] = rand() % 9 + 1;
cout << ' ' << a[n];
}
}
temp = new int [newsize];
size = newsize;
cout << "\n\n For an exit press Esc...";
cout << "\n For continuation press any key...";
if (_getch() == 27)break;
cout << endl;
}
while (true);
delete[] a;
delete[] temp;
return 0;
}
Костя Никитин
Костя Никитин
84 743
Лучший ответ
Создаешь массив большего размера, копируешь в него старый и уничтожаешь старый.
Вадим Сапрыкин
Вадим Сапрыкин
56 928
Массив, называется динамическим, так как изначально его размер неизвестен. Почитайте о массивах, и все прояснится
АN
Андре Nick
1 531