Информатика, опубликовано 2018-08-22 18:54:00 by Гость

Дан массив x целых чисел. Исключить из него все числа, встречающиеся более двух раз(если такие имеются). Затем числа, стоящие на четных местах, упорядочить по невозрастаниюПрограмма необходима на языке Pascal

Ответ оставил Гость

uses crt;
const nmax=100;
 var x:array[1..nmax] of integer;
     n,m,i,j,k,a,p:integer;
 beginclrscr;
randomize;
 repeat
write(Размер массива от 2 до ,nmax, n=);
 readln(n);
until n in [2..nmax];
writeln(Исходный массив:);
for i:=1 to n do
  begin 
 x[i]:=random(10); 
write(x[i]:4); end;
 writeln;i:=1;
m:=n;
 while i  begin
   k:=1; 
 a:=x[i]; 
for j:=n downto i+1 do
  if x[j]=a then k:=k+1;
  if k>2 then
     begin
      j:=i;
      while j      if x[j]=a then
       begin
        if j=n then n:=n-1
        else
         begin
          for p:=j to n-1 do
          x[p]:=x[p+1];
          n:=n-1;
         end;
     end   
  else j:=j+1;
    end
  else i:=i+1;
  end;if n=0 then
  begin
   
 exit 
end;
 if n=m then
write(Все элементы встречены не более 2 раз и не удалены)else
  begin
 for i:=1 to n do  write(x[i]:4);
 for i:=1 to n-1 do
   for j:=i+1 to n do
   if(i mod 2=0)and(j mod 2=0) and(x[i]    begin
     a:=x[i];
     x[i]:=x[j];
     x[j]:=a;
    end;
   for i:=1 to n do
   write(x[i]:4);
  end;

Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.

Форма вопроса доступна на полной версии этой страницы.