Опишите на языке или на одном из языков программирования алгоритм определения количества положительных элементов квадратной матрицы, превышающих по величине среднее арифметическое всех элементов главной диагонали. язык паскаль
var a: array[1..n1, 1..n1] of integer; i, j, n, k, m: integer; s: real;
begin Write('Введите число строк (cтолбцов) массива: '); Readln(n); Randomize; Writeln('Исходный массив'); m := 0; for i := 1 to n do begin for j := 1 to n do begin k := Random(101) - 50; a[i, j] := k; Write(k:4); end; Writeln; m := m + a[i, i] end; k := 0; s := m / n; for i := 1 to n do for j := 1 to n do if a[i, j] > s then k := k + 1; Writeln('Среднее значение элементов главной диагонали равно ', s); Writeln('Количество элементов, значения которых больше этой величины - ', k) end.
n1 = 20;
var
a: array[1..n1, 1..n1] of integer;
i, j, n, k, m: integer;
s: real;
begin
Write('Введите число строк (cтолбцов) массива: ');
Readln(n);
Randomize;
Writeln('Исходный массив');
m := 0;
for i := 1 to n do
begin
for j := 1 to n do
begin
k := Random(101) - 50;
a[i, j] := k;
Write(k:4);
end;
Writeln;
m := m + a[i, i]
end;
k := 0; s := m / n;
for i := 1 to n do
for j := 1 to n do
if a[i, j] > s then k := k + 1;
Writeln('Среднее значение элементов главной диагонали равно ', s);
Writeln('Количество элементов, значения которых больше этой величины - ', k)
end.
Тестовое решение:
Введите число строк (cтолбцов) массива: 10
Исходный массив
29 22 23 15 -23 -25 19 9 -8 -16
1 15 2 35 27 -44 -10 -34 19 50
-35 -31 15 -24 24 -11 -49 -46 40 20
16 48 16 -49 -22 -2 -37 -38 -25 9
36 44 6 23 -16 -27 -40 22 20 29
30 -12 45 32 19 10 -44 -4 41 38
-27 14 20 23 19 4 50 0 7 -21
43 -23 42 -40 -36 -29 13 43 42 0
-21 -20 -15 -40 41 -23 -47 34 -17 19
-9 18 -29 -13 -15 -29 -27 34 -46 31
Среднее значение элементов главной диагонали равно 11.1
Количество элементов, значения которых больше этой величины - 45