Предмет: Информатика,
автор: 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;
}
Ответы
Автор ответа:
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:
Понятно объяснил?
Похожие вопросы
Предмет: Литература,
автор: zhanna7252
Предмет: Русский язык,
автор: danilmusalim2535
Предмет: Математика,
автор: gzgjj24gff
Предмет: Математика,
автор: Dimoncat
Предмет: Математика,
автор: Макс23062000