Вводится длина вектора, состоящего из целых чисел, и его элементы. Найти среднее арифметическое элементов, не являющихся простыми числами, но при этом стоящих на чётных местах

code: #pascal
program lb1;
var m:array [1..100] of integer;
    i,j,n,zc,kol,sum,mm:integer;
    sr:real;
 
function is_prime(x:integer):boolean;   {функция, определяющая является ли число ПРОСТЫМ}
  var i:integer; result:boolean;
begin
  for i:=2 to x div 2 do
    if x mod i=0 then begin
       result:=false;exit; end;
    result:=true;
is_prime:=result;
end;     {*****************конец функции*************}
 
begin
write('Vvedite N (razmer massiva): ');
readln(n);                     {считываем размер массива}
for i:=1 to n do
begin write('M[',i,']='); readln(m[i]); end;   {считываем сам масссив}
 writeln;
for i:=1 to n do write(m[i],' ');    {показываем на экране этот масссив}
 writeln;writeln;
 
sum:=0; {обнуляем счётчик суммы }
kol:=0;  {обнуляем счётчик кол-ва}
for i:=1 to n do
if (i mod 2 = 0) and (not is_prime(m[i])) then   {проверяем на нечётость и простоту чисел}
begin inc(sum,m[i]); inc(kol);  end;  {слаживаем эти числа в сумму  }
 
if kol=0 then sr:=0 else sr:=sum/kol;  {находим СР. АР.}
writeln('Srednee Arif= ',sr:0:2);  {выводим на экран  СР. АР.}
 
readln;
end.      
Поделиться:

Похожие статьи: