-Hasil Keluaran-
masukan jumlah data yang akan dimasukkan ke dalam larik: 5
masukan elemen larik ke-1 : 27
masukan elemen larik ke-2 : 24
masukan elemen larik ke-3 : 22
masukan elemen larik ke-4 : 10
masukan elemen larik ke-5 : 9
masukan elemen larik yang dicari : 10
----------------------------------------------
10 ditemukan pada index ke : 4
program BinarySearch;
uses wincrt;
const Nmaks = 100;
var
L : array [1..Nmaks] of integer;
X, K, n, idx, i, j : integer;
found : boolean;
begin
write ('masukan jumlah data yang akan dimasukan ke dalam larik : '); readln (n);
for K := 1 to n do
begin
write ('masukan elemen larik ke-',k,': '); readln(L[k]);
end;
writeln;
write ('masukan data elemen larik yang dicari : '); readln (X);
write ('----------------------------------------------');
i := 1;
j := n;
while (i<=j) and (not found) do
begin
k:= (i+j) div 2;
if L[K] = X then
begin
found := true
end
else
begin
if L[K] > X then
begin
i := K+1;
end
else
begin
j := K-1;
end;
end;
end;
if found then
begin
idx := K;
write (X,'ditemukan pada index ke : ', idx);
end
else
begin
write (X,'ga ketemu nih');
end;
end.
No comments:
Post a Comment