Pascal. Массивы. Задача 14

Составьте программу, которая методом двоичного поиска проверяет наличие искомого элемента в массиве.

Решение:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
program arrays_14;
uses crt;
var i, n, key, a, b, c: integer;
x: boolean; mas: array[1..100] of integer;
begin
write(‘Размер массива > ‘); read(n);
write(‘Искомый элемент > ‘);
read(key);
for i:=1 to n do
begin
mas[i]:=i*n;
write(mas[i],‘ ‘);
end;
a:=1; b:=n; x:=false;
while a<=b do
begin
c:=a+(ba) div 2;
if (key<mas[c]) then
b:=c1
else if (key>mas[c]) then
a:=c+1
else
begin x:=true; break; end;
end;
if (x=true) then writeln(‘Элемент найден’)
else write(‘Элемент не найден’);
end.
Рейтинг
( Пока оценок нет )
Загрузка ...