Двоичный поиск в массиве чисел - Pascal

Узнай цену своей работы

Формулировка задачи:

Дан массив чисел const A: array [1..8] of integer = (-3, 2, 4, 15, 21, 48, 55, 96); Выполните шаг за шагом алгоритм двоичного поиска числа 3 в этом массиве. Отметьте, какие значения будут вычисляться на каждом шаге.

Решение задачи: «Двоичный поиск в массиве чисел»

textual
Листинг программы
const n=8;
      a:array [1..n] of integer=(-3, 2, 4, 15, 21, 48, 55, 96);
var  i,l,r,m:integer;
     f:boolean;
begin
writeln ('Массив');
for i:=1 to n do
write(a[i]:4);
writeln;
writeln('Вычисляемые значения');
l:=1;
r:=n;
f:=false;
while (l<=r)and not f do
 begin
  m:=(l+r) div 2;
  write(a[m]:4);
  if 3<a[m] then r:=m-1
  else if 3>a[m] then l:=m+1
  else f:=true;
 end;
writeln;
if f then writeln('Число 3 есть в массиве')
else writeln('Числа 3 нет в массиве');
end.

Объяснение кода листинга программы

В данном коде объявлен массив a с 8 элементами, значения которых равны (-3, 2, 4, 15, 21, 48, 55, 96). Далее, объявлены переменные i, l, r, m и f, которые будут использоваться для двоичного поиска числа 3 в массиве. Сначала выводится содержимое массива с помощью цикла for, который проходит по каждому элементу массива и выводит его значение. Затем, переменные l и r инициализируются значениями 1 и n соответственно, а переменная f устанавливается в значение false. Это будет использоваться для определения границы диапазона поиска. Далее, начинается цикл while, который будет выполняться до тех пор, пока l меньше или равно r и f равно false. Внутри цикла, переменная m вычисляется как среднее значение l и r, и выводится значение элемента массива с индексом m. Затем, проверяется условие: если значение a[m] меньше 3, то r устанавливается равным m-1, иначе если значение a[m] больше 3, то l устанавливается равным m+1, и только в случае, если значение a[m] равно 3, переменная f устанавливается в значение true. После выполнения цикла while, выводится сообщение о наличии или отсутствии числа 3 в массиве. Таким образом, данный код выполняет двоичный поиск числа 3 в массиве и выводит результаты поиска.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы