1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| Program prog;
Uses crt;
Type
MatrixType = Array[1..50,1..50] of Real;
Var
A, B : MatrixType;
Sum1, Sum2, Sum3 : Real;
Procedure Vvod(Var D:MatrixType; n, m : integer; Ch : Char); {Процедура ввода матрицы}
Var
i, j : integer;
Begin
for i:=1 to n do
for j:=1 to m do
begin
Write(Ch,'[', i, ',', j, '] = ');
ReadLn(D[i,j]);
end;
End;
Procedure NadGlav(Var D:MatrixType; n, m : integer); {Процедура суммирования эл-тов матрицы над главной диагональю}
Var
i, j, a, b : integer;
Sum1 : real;
Begin
Sum1:=0;
for i:=1 to m do
for j:=1 to n do
while j>i do {При номере столбца > номера строки выполняется суммирование}
Sum1:= Sum1 + D[i,j];
End;
Begin
Write('Введите матрицу А(4,3)');
Vvod(A, 4, 3, 'A');
Write('Введите матрицу B(3,5)');
Vvod(B, 3, 5, 'B');
NadGlav(A, 4, 3);
Write('Сумма эл-тов матрицы А над главной диагональю:');
Vyvod(Sum1, 4, 3); {Был массив вывода, стер, так как был неправильный}
WriteLn;
End. |