Другие языки программирования и технологии

Дан двумерный массив C(m,n). Найти произведение элементов, больших среднего значения. Помогите пожалуйста!!!

Серж Штык
Серж Штык
204
program num;
Var a:array [1..100, 1..100] of integer;
i, j, n, m, s :integer;
sred, p :real;
begin
writeln('Введите размерность массива');
readln(n, m);
writeln('Введите элементы массива');
for i:=1 to n do
for j:=1 to m do
begin
readln (a [ i, j ]);
s :=s+a [ i, j ];
end;
sred:=s/(n*m);
writeln('Среднее арифметическое элементов= ', sred);
p:=1;
for i:=1 to n do
for j:=1 to m do
if a [ i, j ] > sred then p:=p * a [ i, j ];
writeln('Произведение элементов больших среднего значения= ', p);
end.
Father Frost
Father Frost
56 353
Лучший ответ
with Ada.Text_IO, Ada.Integer_Text_IO;
use Ada.Text_IO, Ada.Integer_Text_IO;
procedure N57085767 is
c:array(1..100,1..100) of integer;
m,n:integer;
p:integer:=1;
s:integer:=0;
k:character;
begin
Put("Введите кол-во строк M: ");
Get(m);
Put("Введите кол-во столбцов N: ");
Get(n);
Put_Line("Введите массив: ");
for i in 1..m loop
for j in 1..n loop
Put("C(");
Put(i,1);
Put(",");
Put(j,1);
Put("): ");
Get(c(i, j));
s:=s+c(i, j);
end loop;
end loop;
--Вычисление целой части среднего арифметического
--т. к. массив целочисленный, то преобразование
--в тип Float не обязательно
s:=s/(m*n);
for i in 1..m loop
for j in 1..n loop
if c(i, j) > s then
p:=p*c(i, j);
end if;
end loop;
end loop;
New_Line;
Put("Произведение элементов, больших среднего = ");
Put(p,1);
Get_Immediate(k);
end N57085767;
BH
Bahodir Holov
51 590
да это вообще легко

Похожие вопросы