Как в двумерном массиве после столбцов, содержащих только четные элементы, вставить эти столбцы?

Дана матрица:Матрицы

Вот мой код:

//После столбцов, содержащих только четные элементы, вставить эти столбцы
#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.

→ Ссылка