Как в двумерном массиве после столбцов, содержащих только четные элементы, вставить эти столбцы?
Вот мой код:
//После столбцов, содержащих только четные элементы, вставить эти столбцы
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Rus");
int n; cout << "n = "; cin >> n; // declare block
int** arr = new int* [n];
for (int i = 0; i < n; i++)
{
arr[i] = new int[2 * n];
}
cout << "Матрица = ";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << "a[" << i << "]=" << "["<< j << "]";
cin >> arr[i][j];
}
}
bool evenOnly;
int column = n;
for (int i = 0; i < n; i++) //блок решения задачи
{
evenOnly = true;
for (int j = 0; j < column; j++)
{
if (arr[j][i] % 2 == 0)
{
evenOnly = false;
break;
}
}
if (evenOnly)
{
for (int j = n; j > i; j--)
{
for (int k = 0; k < column; k++)
{
arr[k][j] = arr[k][j - 1];
}
}
n++;
i++;
}
}
for (int i = 0; i < column; i++)
{
for (int j = 0; j < n; j++)
{
cout << arr[i][j] << " ";//вывод массива
}
cout << endl;
}
}
У меня выводится просто матрица.Как вывести результирующую матрицу?
Ответы (1 шт):
Автор решения: EOF
→ Ссылка
У Вас ошибка в условии. Нужно arr[j][i] % 2 != 0 вместо arr[j][i] % 2 == 0.
