• Заполнить массив случайными числами и отсортировать его. Ввести число X.
    Используя двоичный поиск, определить, сколько чисел, равных X, находится в массиве.
    Пример:
    Массив:
    1 4 7 3 9 2 4 5 2
    После сортировки:
    1 2 2 3 4 4 5 7 9
    Введите число X:
    4
    Число 4 встречается 2 раз(а).
    Пример:
    Массив:
    1 4 7 3 9 2 4 5 2
    После сортировки:
    1 2 2 3 4 4 5 7 9
    Введите число X:
    14
    Число 14 не встречается.

Ответы 7

  • Я ж не уточнил, на паскале и надо:)
    • Автор:

      macdonald
    • 5 лет назад
    • 0
  • Ну кароч как то так вроде бы все орфографические правила учёл
    • Автор:

      loki6
    • 5 лет назад
    • 0
  • Спасибо
    • Автор:

      yu
    • 5 лет назад
    • 0
  • добавьте двоичный поиск
  • В двоичном поиске bag - не работает, когда числа х нет в массиве, исправить не могу, ответ не коррекрируется
    • Автор:

      bernard
    • 5 лет назад
    • 0
  • :D Ну го Ничего если  на паскале напишу ? uses crt;var  a:array[1..50] of integer ;i,j,n,x,t,k:integer;b:string;beginread(n);     for i:= 1 to n do     begin     a[i]:=random(15);     write(a[i],' ');      end;     writeln;      for i:= 1 to n-1 do      for j:= i+1 to n do      if a[i]> a[j] then begin t:=a[i]; a[i]:=a[j]; a[j]:=t; end;     for i:= 1 to n do      write(a[i],' ');      writeln;      read(x);      for i:= 1 to n do      if a[i] = x then k:=k+1;      str(k,b);      n:=length(b);      if k in  [11..19] then write (k,' раз') else      if k = 0 then  write('число ',x,' не встречается ')else      case b[n] of      '0','1','5','6','7','8','9': write (k,' раз');      '3','4','2': write (k,' раза') ;      end;end.
  • Добавьте двоичный поиск для поиска элемента массива, равного x. { двоичный поиск }{ l - левая граница для поиска }{ r - правая граница для поиска }l:=1;r:=n;while true do begin   i:=(l+r) div 2;   if a[i]=x then break;   if a[i]>x then r:=i   else  if a[l]<x then l:=i;end;k:=0;for i:=l to r do if a[i]=x then k:=k+1;{ конец двоичного поиска }
    • Автор:

      nolan280
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

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

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

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