Скачиваний:
32
Добавлен:
02.05.2014
Размер:
1.67 Кб
Скачать
Program search;
const
max = 10000;
type myArray = array[0..max] of integer;
var dimension, element, i : integer;
arr,sortArray : myArray;

function binarySearch( arr : myArray; element : integer; length : integer ) : integer;
var L, R, i : integer;
find : boolean;
begin
L := 0;
R := length - 1;
find := false;
while ( (L <= R) and (not find) ) do begin
i := (L+R) div 2;
if arr[i] = element then find := true
else if element < arr[i] then R := i - 1
else L := i + 1;
end;
if arr[i] = element then binarySearch := i
else binarySearch := -1;
end;

function easySort( arr : myArray; length : integer ) : myArray;
var i, j, item : integer;
begin
for i := 1 to length-1 do begin
item := arr[i];
j := i;
while item < arr[j-1] do begin
arr[j] := arr[j-1];
j := j-1;
end;
arr[j] := item;
end;
easySort := arr;
end;

begin
writeln('Binary search.');
write('Enter array dimension: '); readln( dimension );
write('Enter '); write( dimension ); write(' elements: ');
for i := 0 to dimension-1 do
read(arr[i]);
arr := easySort( arr, dimension );
write('Sorting array: ');
for i := 0 to dimension-1 do begin
write(arr[i]); write(' '); end; writeln;
write('Enter searching element: '); readln( element );
write('Position of element '); write( element ); write(' is '); writeln( binarySearch( arr,element, dimension ) );
writeln('Press any key to continue...');
readln;
end.