• Напишите программу, которая сортирует массив по убыванию и ищет в нем все значения, равные введенному числу.
    PascalABC

Ответы 1

  • const n=20; var  a:array[1..n] of integer;  i,j,t,x,i1,i2:integer;begin  Randomize;  Writeln('Исходный массив:');  for i:=1 to n do begin    a[i]:=Random(21);    Write(a[i],' ')  end;  Writeln;  for i:=1 to n-1 do    for j:=1 to n-i do      if a[j]<a[j+1] then      begin t:=a[j]; a[j]:=a[j+1]; a[j+1]:=t end;  Writeln('Отсортированный массив:');  for i:=1 to n do Write(a[i],' ');  Writeln; write('x = '); readln(x); i1:=1; i2:=n; repeat  i:=(i1+i2) div 2;  if a[i]>x then i1:=(i1+i2) div 2+1;  if a[i]<x then i2:=(i1+i2) div 2-1; until (a[i]=x)or(i1>i2); if a[i]=x then   begin  writeln('Искомый(ые) номер(а) элемента(ов):');  while (i>0)and(a[i]=x) do i:=i-1;  i:=i+1;  while (i<=n)and(a[i]=x) do begin write(i,' '); i:=i+1; end;  end  else writeln('Элемент не найден'); writeln;end.Пример:Исходный массив:15 4 16 3 7 10 3 1 18 6 18 2 7 11 10 16 2 10 7 12 Отсортированный массив:18 18 16 16 15 12 11 10 10 10 7 7 7 6 4 3 3 2 2 1 x = 10Искомый(ые) номер(а) элемента(ов):8 9 10 
    • Автор:

      calikuts
    • 2 года назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years