В приложенном файле есть программа, пожалуйста помогите ее исправить. C++, начинающий...

0 голосов
56 просмотров

В приложенном файле есть программа, пожалуйста помогите ее исправить. C++, начинающий уровень.
Ее назначение: в динамический массив вводятся данные, оканчивающиеся -1
необходимо вывести сумму элементов и сам массив


Скачать вложение Текст (TXT)

Информатика (3.4k баллов) | 56 просмотров
0

Размер массива нигде не указывается, операция new[] используется, если массив фиксированного размера. Если массив переменного размера, то используется std::vector. Можно ещё использовать malloc, realloc, free. Какой вариант подойдёт?

0

malloc, realloc не подойдут, так как являются не надежными

0

насколько я понял это промежуточный этап между статическими и динамическими массивами, где для расширения массива увеличивают количество ячеек в новом массиве и переносят туда старый

0

(промежуточный в изучении)

Дан 1 ответ
0 голосов

В кодблоксе работает нормально, а насчет вижуал студио хз 
#include
#include
#include
int x, n=0, s=0;

using namespace std;

int main()
{   
int *A = new int[n];
int i = 0;
while
(x!= -1)
{
 cin >> x;
 n++;
 A[i] = x;
 i++;
 s += x;
}
for (int i = 0; i < n; i++)
{
 cout << A[i] << " ";<br>}
delete[] A;
cout << endl;<br>cout <<"s= "<< s;<br>_getch();
return 0;
}

(122 баллов)