0 / 0 / 1
Регистрация: 01.10.2014
Сообщений: 22
1

Поиск заданного элемента в упорядоченном массиве(бинарный поиск)

01.10.2014, 07:42. Показов 2938. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Заполнить одномерный массив из n элементов по формуле приведенной в картинке. Размерность массива задать в виде именованной константы. Вывести массив на экран. Ввести с клавиатуры число. Используя метод половинного деления определить индекс первого элемента с таким значением и количеством таких элементов. Если элемент с таким значением в массиве отсутствует вывести соответствующее сообщение. Так же прикладываю пример решения

Индексы элементов1234567...
Значения элементов44161636366464
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Const
 a: Array [1..10] of integer=(1,4,5,11,11,11,15,17,18,20);
Var
 x,left,right,i,m,num:integer;
  begin
   write('введите число->'); readln(x);
   left:=1; right:=10;
   while left<right do
    begin
     m:=(left+right) div 2;
     if a[m]<x Then left:=m+1 else right:=m
    end;
   For i:= 1 to 10 Do Write(a[i]:4);
   writeln;
   if a[right]=x then Writeln(right,' элемент =',x)
   else writeln('массив не содержит значение',x);
   readln;
  end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.10.2014, 07:42
Ответы с готовыми решениями:

Совершить бинарный поиск заданного элемента в упорядочном по возрастанию (падению) массиве целых чисел
Совершить бинарный поиск заданного элемента в упорядочном по возрастанию (падению) массиве целых...

Поиск первого положительного элемента массива (бинарный поиск)
Нужен именно бинарный поиск,чтобы выводился первый положительный элемент из массива чисел(в массиве...

Используя бинарный поиск, определите номер элемента массива, значение которого равно k
Значения элементов одномерного массива являются значениями функции f(x) на отрезке , взятые с шагом...

Поиск элемента в упорядоченном массиве
Никак не могу разобраться с поиском элемента в упорядоченном массиве , напишите пожалуйста для...

1
0 / 0 / 1
Регистрация: 01.10.2014
Сообщений: 22
01.10.2014, 10:32  [ТС] 2
Вдруг кому надо будет


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
program Laba8;
const
a:Array [1..8] of integer=(4,4,16,16,36,36,64,64);
var
x,left,right,i,m,num:integer;
begin
write('Введите число ');
readln(x);
left:=1;
right:=10;
while left<right do
begin
m:=(left+right) div 2;
if a[m]<x then left:=m+1 else right:=m
end;
for i:=1 to 7 do 
write(a[i]:4);
writeln;
if a[right]=x then 
writeln(right,' элемент=',x)
else writeln('Масссив не содержит значение ',x);
readln;
end.
0
01.10.2014, 10:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.10.2014, 10:32
Помогаю со студенческими работами здесь

Бинарный поиск чисел в массиве
Привет! Никак не могу доработать программу: выводит только ответ для последнего значения второго...

бинарный поиск в массиве записей
Товари програмисты хел плиз! вот задача- В памяти ЭВМ хранятся списки номеров телефонов и...

бинарный поиск в одномерном массиве строк
program poisk; {$APPTYPE CONSOLE} uses crt; const n=100; type mas=array of string; var...

Бинарный поиск. Заменить первый положительный элемент на минимальное значение элемента массива.
Заменить первый положительный элемент на минимальное значение элемента массива A(N)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru