Предмет: Информатика, автор: pozharovartyom

Как переделать в этой задаче на С++ статический массив на динамический?

#include <iostream>
using namespace std;

int main()

{

int a[][2] = {2,6,1,9,5,7,0,10};

for (int i = 0; i < 4; i++)

if (i % 2 == 0) {

for (int k = 0; k < 2 - 1; k++)

for (int j = 0; j < 2 - 1; j++)

if (a[i][j] > a[i][j + 1])

swap(a[i][j], a[i][j + 1]);

}

else

for (int k = 0; k<2 - 1; k++)

for (int j = 0; j<2 - 1; j++)

if ( a[i][j]
swap(a[i][j], a[i][j + 1]);

// Вывод результата

for (int i = 0; i < 4; i++) {

for (int j = 0; j < 2; j++)

cout « a[i][j] « " ";

cout « endl;

}

return 0;

}

Ответы

Автор ответа: Browze
0

В начало main()

size_t N, M;

std::cin >> N >> M;


int** a = new int [N]; // удалить старый массив и вставить этот


for(int i = 0; i < N; i++)

{

a[i] = new int [M];

}

for(int i = 0; i < N; i++)

{

for(int j = 0; j < N; j++)

 std::cin >> a[i][j];//инициализируем с клавиатуры

}

В самый конец перед оператором ретурн:

for(int i = 0; i < N; i++)

{

delete[] a[i];//удаляем

}

delete[] a;//удаляем


Оперировать так же.


Browze: Понятно объяснил?
Похожие вопросы
Предмет: Математика, автор: Dimoncat