Дан массив x целых чисел. исключить из него все числа, встречающиеся более двух раз(если такие имеются). затем числа, стоящие на четных местах, упорядочить по невозрастаниюпрограмма необходима на языке pascal
uses crt; const nmax=100; var x:array[1..nmax] of integer; n,m,i,j,k,a,p:integer; begin clrscr; 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<n-1 do 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<=n do 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]<x[j]) then begin a:=x[i]; x[i]:=x[j]; x[j]:=a; end; for i:=1 to n do write(x[i]:4); end;
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку