Особенности элементов квадратных матриц
Фрагменты операций с двумерными массивами
Фрагменты вычисления характеристик строк и столбцов двумерного массива
Рассмотрим фрагменты программ в таблице 4.
Таблица 4
Характеристика | Для каждой строки | Для каждого столбца |
1. Сумма s | for i:=1 to m do begin s[i]:=0; for j:=1 to n do s[i]:=s[i]+A[i,j]; end; | for j:=1 to n do begin s[j]:=0; for i:=1 to m do s[j]:=s[j]+A[i,j]; end; |
2. Произведение p | for i:=1 to m do begin p[i]:=1; for j:=1 to n do p[i]:=p[i]*A[i,j]; end; | for j:=1 to n do begin p[j]:=1; for i:=1 to m do p[j]:=p[j]*A[i,j]; end; |
3. Максимальное значение max | for i:=1 to m do begin max[i]:=A[i,1]; for j:=1 to n do if A[i,j]>max[i] then max[i]:=A[i,j]; end; | for j:=1 to n do begin max[j]:=A[1,j]; for i:=1 to m do if A[i,j]>max[j] then max[j]:=A[i,j]; end; |
4. Минимальное значение min | for i:=1 to m do begin min[i]:=A[i,1]; for j:=1 to n do if A[i,j]<min[i] then min[i]:=A[i,j]; end; | for j:=1 to n do begin min[j]:=A[1,j]; for i:=1 to m do if A[i,j]<min[j] then min[j]:=A[i,j]; end; |
Рассмотрим фрагменты программ в таблице 5.
Таблица 5
Операция | Фрагмент программы |
1. Ввод элементов массива | for i:=1 to m do for j:=1 to n do read(A[i,j]); |
2. Вывод элементов массива | for i:=1 to m do begin for j:=1 to n do write(A[i,j]); writeln; end; |
3. Замена элементов массива на величину z | for i:=1 to m do for j:=1 to n do A[i,j]:=z; |
4. Увеличение элементов массива на величину z (аналогично уменьшение, умножение, деление) | for i:=1 to m do for j:=1 to n do A[i,j]:=A[i,j]+z; |
5. Вычисление элементов массива B прибавлением к элементам массива A величины z (аналогично вычитанием, умножением, делением) | for i:=1 to m do for j:=1 to n do B[i,j]:=A[i,j]+z; |
6. Вычисление индексов максимального элемента imax , jmax (аналогично минимального) | max:=A[1,1]; imax:=1; jmax:=1; for i:=1 to m do for j:=1 to n do if A[i,j]>max then begin max:=A[i,j]; imax:=i; jmax:=j; end; |
7. Вычисление суммы элементов 1-й строки | s:=0; for j:=1 to n do s:=s+A[1,j]; |
8. Вычисление суммы элементов 1-го столбца | s:=0; for i:=1 to m do s:=s+A[i,1]; |
Двумерный массив называется квадратной матрицей, если у него количество строк равно количеству столбцов ().
Рассмотрим квадратную матрицу:
.
Элементы aij этого массива имеют такие особенности:
1. Элементы находятся на главной диагонали, если .
2. Элементы находятся выше главной диагонали, если .
3. Элементы находятся ниже главной диагонали, если .
4. Элементы находятся вне главной диагонали, если .
5. Элементы находятся на побочной диагонали, если .
6. Элементы находятся выше побочной диагонали, если .
7. Элементы находятся ниже побочной диагонали, если .
8. Элементы находятся вне побочной диагонали, если .