Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2013, 12:34   #1
Enerdgazer
 
Регистрация: 18.12.2013
Сообщений: 7
По умолчанию Составить программу поиска в упорядочном массиве

Задача такая: Составить программу поиска в упорядочном массиве искомого числа методом последовательного деленея массива пополам
Enerdgazer вне форума Ответить с цитированием
Старый 18.12.2013, 12:39   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

http://kvodo.ru/dvoichnyiy-poisk.html

http://www.programmersforum.ru/showthread.php?t=236070

Последний раз редактировалось Stilet; 18.12.2013 в 13:00.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 18.12.2013, 14:04   #3
Enerdgazer
 
Регистрация: 18.12.2013
Сообщений: 7
По умолчанию

у меня програма метод сортировки масива пузырьком есть мне в нее как то надо запихнуть поиск чисел(
Enerdgazer вне форума Ответить с цитированием
Старый 18.12.2013, 14:28   #4
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Дак работайте с отсортированным массивом. Вам нужен этот кусок кода:
Код:
count := 0;
  First := 1;
  Last := n;
  Found := False; {Элемент не найден}
  
  repeat {Повторять поиск}
  i := (First + Last) div 2; {Разделить на две части}
  if a[i] = m then Found:=True
    else
      begin
        if a[i] > m then First := i+1 {Искать элемент в правой части}
        else Last := i-1; {Искать элемент в левой части}
      end;
  count := count+1; {Увеличить счетчик числа итераций}
  until (Found) or (First>Last); {Завершить, если найдется искомый элемент или будет просмотрен весь массив}
  
  if Found then Writeln('Искомый элемент ', m,' в массиве занимает ',I,'-ю позицию')
  else
  Writeln('В массиве нет искомого элемента ',m);
  Writeln('Поиск выполнен За ',count,' итераций');
  Writeln('Завершить>');
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить программу вычисления и печати таблицы значений функции при заданных значениях параметров Составить программу вычисле Марина1986 C/C++ Сетевое программирование 1 08.05.2013 13:34
необходимо составить подпрограмму для поиска данных в массиве Mainln Помощь студентам 0 06.04.2013 12:15
Составить алгоритм и программу для перестановки элементов в заданном массиве Р (10) так, чтобы в начале стояли элементы... Кулибаба Петро JavaScript, Ajax 1 23.06.2012 16:12
Составить программу которая находит индекс числа в массиве случайных чисел MadNikys Помощь студентам 9 03.03.2010 20:52