Contoh program pencarian beruntun bagi dua

uses wincrt;

var
L : array [1..100] of integer;
n1,x1,m,hasil :integer;

function BinarySearch2(n :integer; x : integer) : integer;

var
i,j : integer;
idx, k : integer;

ketemu : boolean;
begin
i := 1;
j := n;

ketemu := false;
while (not ketemu) and (i <= j) do
begin
k:=(i + j) div 2;
if (L[k] = x) then                            
ketemu:= true
else
if (x > l[k]) then
i := k + 1
else
j := k - 1;
end;

if (ketemu) then
idx := k
else
idx := -1;

BinarySearch2:=idx;
end;

begin
write ('masukkan jumlah data ');
readln (n1);

for m:=1 to n1 do
begin
write ('masukkan isi larik ke ' ,m, ' ');
        readln (L[m]);
end;

write ('inputkan data yang ingin dicari ');
readln (x1);


hasil:=BinarySearch2 (n1,x1);

if (hasil = -1) then
writeln ('tidak ditemukan di larik')
else
writeln ('data inputan ditemukan di larik ke ', hasil);

end.

Like THIS :
Share this article to: Facebook Twitter Google+ Linkedin Technorati Digg

Jika Anda menyukai Artikel di blog ini, Silahkan berlangganan gratis via email, dengan begitu Anda akan mendapat kiriman artikel setiap ada artikel yang terbit.