М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
afver8
afver8
02.01.2021 11:06 •  Информатика

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

👇
Ответ:
Miku1111
Miku1111
02.01.2021
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;
4,5(46 оценок)
Открыть все ответы
Ответ:
наталья763
наталья763
02.01.2021

program exs;
var a : array [1..1000] of integer;
n, i : integer;

procedure qsort(l, r: integer);
var i, j, key, buf : integer;
begin
i := l;
j:= r;
key:=a[(l+r) div 2];
repeat
while a[i] < key do inc(i);
while a[j] > key do dec(j);
if i<=j then begin
buf:=a[i];
a[i]:=a[j];
a[j]:=buf;
inc(i);
dec(j);
end;
until (i>j);
if (l < j) then qsort(l, j);
if (i < r) then qsort(i, r);
end;

begin
readln(n);
for i:= 1 to n do begin
read(a[i]);
end;
qsort(1, n);
for i:=1 to n do begin
write(a[i], ' ');
end;
end.

4,8(85 оценок)
Ответ:
ayratka2
ayratka2
02.01.2021

1)

Var

a:array[1..10] of integer;

i:integer; 

begin

for i:=1 to 10 do

read(a[i]);

randomize;

for i:=1 to 10 do

a[i]:=random(136)+22;

for i:=1 to 10 do

if a[i]>100 then writeln(a[i]);

end.

2.

var

a,n:integer;

begin

readln(a,n);

a:=a^n;

writeln(a);

end;

6.

var

x:array[1..5] of real;

i:integer;

begin

for i:=1 to 5 do

begin

 

read(x[i]);

 

if x[i]=9 then x[i]:=x[i]*3;

if x[i]>9 then x[i]:=x[i]/10;

 

writeln(x[i]); 

end; 

 end.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4,4(68 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ