Задание: заполнить матрицу (двухмерный массив) значениями вектора
b1, b2,...,b81 от центра по спирали (влево-вниз-вправо-вверх).
Примечание: на рисунке указаны значения индексов!
Я написал код, который просто заполняет матрицу в обычном порядке:
#include <iostream>
using namespace std;
int main()
{
const int rows = 9;
const int cols = 9;
int ARR[rows][cols];
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
ARR[i][j] = rand() % 10;
}
}
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
cout << ARR[i][j] << " ";
}
cout << endl;
}
}
Как сделать так, чтобы индексы элементов возрастали от центра по спирали (как указано на рисунке)?