Дана квадратная матрица NxN, содержащая вещественные числа. Найти сумму элементов первого столбца.
Program pr2;
CONST N=3;
TYPE MAS=array [1..N,1..N] of real;
Var a: MAS;
i: 1..3;
j: 1..3;
s:real;
BEGIN
Writeln(‘Введите элементы массива’);
For i:=1 to n do
For j:=1 to n do
Readln(a[i,j]);
{Вывод значений массива}
For i:=1 to n do
begin
For j:=1 to n do
Write (a[i,j]:5:1);
Writeln;
end;
s:=0; j=1;
For i:=1 to n do
s:=s+a[i,j];
Writeln(‘Сумма элементов первого столбца = ’,s:5:2);
end.
Вычисление суммы элементов всего двумерного массива.
......
S:=0;
for i:=1 to m do
for j:=0 to n do
S:=S+a[i,j];
.............
Задача поиска максимального (минимального) элемента и его индексов.
Ищем максимальный элемент каждой строки:
For i:=0 to m do
begin
max:=a[i,1];
ind_L:=i; {сохраняем номер строки}
ind_C:=1; {заносим номер 1 - первый столбец}
for j:=1 to n do
if a[i,j]>max then begin
max:=a[i,j];
ind_C:=j {сохраняем номер j-ого столбца}
end;
writeln(‘max строки ’,i,’=’,max)
end;
Ищем минимальный элемент каждого столбца:
For j:=0 to n do { перемещаемся по столбцу}
begin
min:=a[1,j];
ind_L:=1; {сохраняем номер строки}
ind_C:=j; {сохраняем номер столбца}
for i:=1 to m do
if a[i,j]<min then begin
min:=a[i,j];
ind_L:=i {сохраняем номер j-ой строки}
end;
writeln(‘min ‘,j,’ столбца’,min)
end;
Алгоритм поиска минимального элемента и его индексов для всего массива.
Min:=a[1,1];
ind_L:=1;
ind_C:=1;
for i:=1 to m do
for j:=1 to n do
if a[i,j]<min then begin
min:=a[i,j]; ind_L:=i; ind_C:=j;
end;
Квадратные матрицы.
Type mas4x4=array[1..4,1..4] of integer;
var a: mas4x4;
a11 | a12 | a13 | a14 |
a21 | a22 | a23 | a24 |
a31 | a32 | a33 | a34 |
a41 | a42 | a43 | a44 |
Главная диагональ - элементы a11, a22, a33, a44 (индексы элементов, расположенных на главной диагонали (i=j)
Побочная диагональ - элементы a41, a32, a23, a14 (сумма индексов элементов на 1 больше размерности строки (или столбца), т.е. i+j=4=1 или i+j=n+1. На рисунке главная диагональ закрашена сплошным серым цветом, побочная - черным.
a12 | a13 | a14 | |
a23 | a24 | ||
a34 | |||
Элементы, расположенные над главной диагональю, Для индексов элементов, расположенных над главной диагональю выполняется отношение i<j;
a21 | |||
a31 | a32 | ||
a41 | a42 | a43 |
Элементы, расположенные под главной диагональю, Для индексов элементов, расположенных под главной диагональю выполняется отношение i>j;
Примеры:
1) Найти сумму элементов главной диагонали:
S:=0;
for i:=1 to n do
S:=S+a[i,i];
2) Найти минимальный элемент побочной диагонали:
min:=a[1,n];
for i:=1 to n do
if a[i,n+1-i]<min then min:=a[i,n+1-i];