Главной или побочной диагонали матрицы

Существует множество задач, в которых необходимо использовать элементы главной или побочной диагонали матрицы (эти понятия имеют смысл только для квадратных матриц!).

Пусть дана матрица а(4,4).

 

a11, a22, a33, a44 – элементы главной диагонали матрицы. На главной диагонали индексы строки и столбца равны, то есть i = j. Элемент главной диагонали можно обозначать как a[i,i].

У элементов матрицы, лежащих выше главной диагонали, i < j, а у тех, которые ниже, i > j.

a14, a23, a32, a41 – элементы побочной диагонали матрицы. На побочной диагонали сумма индексов строки и столбца постоянна и на единицу больше размера матрицы, т. е. для матрицы a(4, 4) сумма индексов i + j = 5, поэтому элемент побочной диагонали можно обозначать как a[i,5 – i].

У элементов a[i, j], лежащих выше побочной диагонали сумма индексов i + j < 5, а у элементов a[i, j], лежащих ниже побочной диагонали, сумма индексов i + j > 5.

Задача 1. Найти сумму элементов, расположенных на главной диагонали матрицы a.

sum:=0; for i:=1 to 4 do for j:=1to 4 do if i=j then sum:=sum + a[i, j]; Другой вариант: sum:=0; for i:=1 to 4 do sum:=sum + a[i, i];

Задача 2. Найти сумму элементов матрицы а, расположенных выше ее главной диагонали.

sum = 0;

for i:=1 to 4 do

for j:=1 to 4 do

if i < j then sum:=sum + a[i, j];

Задача 3. Найти сумму элементов побочной диагонали матрицы a.

sum:=0; for i:=1 to 4 do for j:=1to 4 do if i+=5j then sum:=sum + a[i, j]; Другой вариант: sum:=0; for i:=1 to 4 do sum:=sum + a[i, 5-i];

sum = 0;

for i : = 1 to 4 do

sum : = sum + a[i, 5 – i];

Задача 4. Найти сумму элементов матрицы a, лежащих выше ее побочной диагонали.

sum = 0;

for i:=1 to 4 do

for j:=1 to 4 do

if i+j<5 then sum:=sum + a[i, j];