• Написать функцию bsearch, которая принимает на вход отсортированный по неубыванию массив целых чисел и целое число x. В качестве результата функция должна возвращать индекс первого элемента массива, строго большего x. В Вашей реализации функция может принимать любое количество любых параметров, только 2
    этих параметра обязательны. При использовании Вашей функции должна быть возможность определить, существует ответ или нет. В качестве решения пришлите ссылку на репозиторий с программой на языке C с примером использования функции.

Ответы 5

  • Отсчет от 1, это в Си отсчет с нуля, в Паскале с 1
    • Автор:

      aires
    • 6 лет назад
    • 0
  • Так ты на Си писал
  • Получите Вы вывод на экране, начнете от нуля считать? Возвращаемое функцией значение специально увеличено на 1 return rigth+1; yfxtybt
  • " возвращать индекс первого элемента массива, строго большего x."
    • Автор:

      codydgej
    • 6 лет назад
    • 0
  • int bsearch(int* a,int n,int x) { int k,left,rigth; if (x>=a[n-1]) return -1; if (x<a[0]) return 0; left=0; rigth=n-1; k=rigth; while (left!=rigth-1) { if (a[k]>x) rigth=k; else left=k; k=(left+rigth)>>1; } return rigth; } убедили Вы меня, функция будет такая, и в выводе результата изменить строку if (k<0) printf("нет элемента больше %i",x);
  • Добавить свой ответ

Войти через Google

или

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

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

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