Имеется целочисленный массив n*m элементов. найти среднее арифметическое элементов массива. определить и вывести количество массива, значения которых превышает это среднее
PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018 Внимание! Если программа не работает, обновите версию!
begin var (n,m):=ReadInteger2('Количество строк и столбцов в массиве:'); Writeln('*** Исходный массив ***'); var a:=MatrRandom(n,m,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var s:=a.ElementsByRow; var avg:=s.Average; Writeln('Среднее арифметическое ',avg); Writeln('Элементы, превышающее среднее арифметическое:'); s:=s.Where(t->t>avg); s.OrderBy(t->t).Println; Writeln('Всего таких элементов: ',s.Count) end.
Пример Количество строк и столбцов в массиве: 4 5 *** Исходный массив *** 98 95 -10 -45 21 -33 -11 14 -46 87 57 -40 -96 -40 15 -99 -20 -7 -29 -89
Среднее арифметическое -8.9 Элементы, превышающее среднее арифметическое: -7 14 15 21 57 87 95 98 Всего таких элементов: 8
Внимание! Если программа не работает, обновите версию!
begin
var (n,m):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('*** Исходный массив ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var s:=a.ElementsByRow;
var avg:=s.Average;
Writeln('Среднее арифметическое ',avg);
Writeln('Элементы, превышающее среднее арифметическое:');
s:=s.Where(t->t>avg);
s.OrderBy(t->t).Println;
Writeln('Всего таких элементов: ',s.Count)
end.
Пример
Количество строк и столбцов в массиве: 4 5
*** Исходный массив ***
98 95 -10 -45 21
-33 -11 14 -46 87
57 -40 -96 -40 15
-99 -20 -7 -29 -89
Среднее арифметическое -8.9
Элементы, превышающее среднее арифметическое:
-7 14 15 21 57 87 95 98
Всего таких элементов: 8