Дан массив из n чисел. найти среднее арифметическое элементов, удовлетворяющих условию 2< =[i]< =8. если таких элементов нет, вывести сообщение об этом.
//Как-то громоздко получилось, но я так вижу. Эх, выходные. const n=5; var a:array[1..n] of integer; b:array[0..8] of integer; ar:array[1..n] of integer; i,c,j:integer; begin randomize; writeln('Array:'); for i:=1 to n do begin a[i]:=random(8); write(a[i]:4); end; for i:=1 to n do begin; for j:=0 to 8 do if a[i]=j then inc(b[j]); end; for i:=1 to n do begin; for j:=0 to 8 do if (b[j]>1) and (a[i]=j) then a[i]:=9; if a[i]<>9 then begin; inc(c); ar[c]:=a[i]; end; end; writeln; for i:=0 to 8 do writeln(i,'=',b[i]); writeln; writeln('Final array:'); for i:=1 to n do if a[i]=9 then a[i]:=0;
for i:=1 to c do begin; a[i]:=ar[i]; write(a[i]:4); end; end.
1 - моделью 2 - меньше информации 3 - глобус, макет здания, муляж яблока, манекен 4 - рисунок, фотография 5 - знаковой 6 - смешанной 7 - автомобиль — техническое описание автомобиля, город — путеводитель по городу 8 - существенные признаки объекта-оригинала 9 - разные модели объекта 10 - физическая карта, график зависимости расстояния от времени, схема узора для вязания крючком, схема метро 11 - словесное описание, формула 12 - знаковой 13 - смешанной 14 - болт — чертеж болта, мелодия — нотная запись мелодии
var i,m:longint;
sum,count:real;
A:array [1..n] of longint;
begin
sum:=0; count:=0;
for i:=1 to n do
begin read(m); A[i]:=m end;
for i:=1 to n do
if (A[i]>=2) and (A[i]<=8)
then begin sum:=sum+A[i]; count:=count+1 end;
sum:=sum/count;
if (sum<0)
then writeln('Элементов удовлетворяющих условию нет')
else writeln(sum);
end.
P.S. Переменную n во всем тексте программы следует заменить на конкретное натуральное число!