Предмет: Информатика, автор: Аноним

подскажите что не так.
Задача:
Program my1;
const n=10;
var B :array [1..7] of real;
sred,sum:real;c,i:integer;
Procedure sor(i:integer);
begin
B[1]:=13.54;
B[2]:=-5.98;
B[3]:=-7.05;
B[4]:=45.7;
B[5]:=0.51;
B[6]:=4.78;
B[7]:=-0.54;
for i:=1 to 7 do begin
if (abs(B[i]) inc (c);
sred:=sum/c;
end;
end;
begin
sor(B[i]);
writeln('cреднее арифметическое таких чисел=',sred);
end.
Задание:

Приложения:

Ответы

Автор ответа: therealcf2014
1
Program my1;
const B :array [1..7] of real = (13.54, -5.98, -7.05, 45.7, 0.51, 4.78, -0.54);
var n, sr: real; i: integer;
Procedure sor(n:real; var sred:real);
var i, k:integer;
begin
for i:=1 to 7 do
if (abs(B[i])<n) and (abs(B[i])<10) then
begin
sred:=sred+B[i];
k:=k+1;
end;
sred:=sred/k;
end;
begin
write('Введите заданное число: ');
readln(n);
sor(n, sr);
writeln('Среднее арифметическое таких чисел: ', sr);
for i:=1 to 7 do
if B[i]>sr then writeln(B[i]);
end.

therealcf2014: Да
Автор ответа: danilbin
1
Program my1;
const n=10;
var B :array [1..7] of real;
sred,sum:real;
c,i:integer;
begin
c:=7;
sum:=0;
B[1]:=13.54;
B[2]:=-5.98;
B[3]:=-7.05;
B[4]:=45.7;
B[5]:=0.51;
B[6]:=4.78;
B[7]:=-0.54;
for i:=1 to 7 do begin
if (abs (B[i])<10) then Dec(c) else
sum:=sum+B[i];
end;
sred:=sum/c;
writeln('cреднее арифметическое таких чисел=',sred);
write('Больше cреднего арифметического: ');
for i:=1 to 7 do begin
if (abs(B[i])>sred) then
write(B[i],'; ');
end;
end.
Похожие вопросы