Квадратные матрицы
Пусть матрица
А
содержит
N
строк и столько же столбцов. Такие матрицы называют
квадратными.
У квадратных матриц можно выделить главную и побочную диагонали.
Главная диагональ - диагональ, которая идет с левого верхнего угла в правый нижний угол.
Побочная диагональ - идет с правого верхнего угла в левый нижний угол.
Тогда для перебора всех элементов, стоящих на главной диагонали достаточно одного цикла:
псевдокод:
для i от 0 до N-1
работаем с A[i][i]
Таким же циклом можно перебрать элементы побочной диагонали.
Для элементов, стоящих на побочной диагонали сумма индексов строки и столбца постоянна и равна N-1
.
псевдокод:
для i от 0 до N-1
работаем с A[i][N-1-i]
Чтобы обработать все элементы, расположенные на главной диагонали и под ней, нужен вложенный цикл:
- номер строки меняется от
0
до
N-1
;
- номер столбца от
0
до
i
.
псевдокод:
для i от 0 до N-1
для j от 0 до i
работаем с A[i][j]