Помогите решить задачу, написал код, не могу исправить ошибку.
Задача: Дана матрица размера M × N (M и N — четные числа). Поменять местами левую верхнюю и правую нижнюю четверти матрицы.
#include "pch.h"
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int n = 0, c = 0;
cout << "Введите количество строк и столбцов: ";
cin >> n >> c;
int**a = new int*[n];
for (int i = 0; i < n; i++)
{
a[i] = new int[c];
}
for (int i = 0; i < n; i++)
{
for (int j = 0; j < c; j++)
{
a[i][j] = rand() % 25;
cout << a[i][j] << "\t";
}
cout << endl;
}
cout << endl;
int k = n / 2;
int l = c / 2;
for (int i = 0; i <= k; i++)
{
for (int j = 0; j <= l; j++)
{
int temp = a[i][j];
a[i][j] = a[i + k][j + l];
a[i + k][j + l] = temp;
cout << temp << " ";
}
}
}
Ошибка