Ass.Wr.Wb
Kembali lagi dengan posting tentang program. kali ini tentang sortir data....yuk disimak :)
Secara umum bentuk form seperti ini saja cukup ::
nah..selanjutnya menulis script..yeay
listing programnya seperti ini yah ::
sebelumnya, ketik ini dulu dibawah private declaration ::
{ Private declarations }
//deklarasi array data pada bagian private
Data:array of integer;
selanjutnya, fungsi quick sortnya nih :: (ketik dibawah $R.dfm)
//fungsi quick sort
procedure QuickSort(var A: array of integer; iLo,iHi: integer);
var
Lo,Hi,Pivot,T : integer;
begin
Lo:=iLo;
Hi:=iHi;
Pivot:=A[(Lo+Hi)div 2];
repeat
while A[Lo] < Pivot do Inc(Lo);
while A[Hi] > Pivot do Dec(Hi);
if Lo <= Hi then
begin
T:=A[Lo];
A[Lo]:=A[Hi];
A[Hi]:=T;
Inc(Lo);
Dec(Hi);
end;
until Lo > Hi;
if Hi > iLo then QuickSort(A,iLo,Hi);
if Lo < iHi then QuickSort(A,Lo,iHi);
end;
lanjut...ke button click yang pertama ya..
procedure TDyahNaufal_2b.Button1Click(Sender: TObject);
var
nilai : integer;
begin
//validasi inputan yang akan ditambahkan
if trystrtoint(Edit1.Text,nilai) then ListBox1.Items.Add(inttostr(nilai));
end;
ke button click selanjutnya temaan...
procedure TDyahNaufal_2b.Button2Click(Sender: TObject);
var
indek : word;
begin
//menentukan panjang array
SetLength(Data,ListBox1.Items.Count);
//pemasukan nilai ke array
for indek:=0 to ListBox1.items.Count - 1 do
Data[indek]:=strtoint(ListBox1.Items[indek]);
//proses pengurutan
Quicksort(data,Low(Data),High(Data));
//kosongkan hasil
ListBox2.Items.Clear;
//memasukkan nilai hasil
for indek :=0 to ListBox1.Items.Count - 1 do
ListBox2.Items.Add(inttostr(data[indek]));
end;
yang terakhirr button exit cukup ketik ini ::
procedure TDyahNaufal_2b.Button3Click(Sender: TObject);
begin
close;
end;
end.
sudaaah... tekan F9 yaa.. running dehhh.. ::
hasilnyaaa..:: tarrraa...::
Kembali lagi dengan posting tentang program. kali ini tentang sortir data....yuk disimak :)
Secara umum bentuk form seperti ini saja cukup ::
nah..selanjutnya menulis script..yeay
listing programnya seperti ini yah ::
sebelumnya, ketik ini dulu dibawah private declaration ::
{ Private declarations }
//deklarasi array data pada bagian private
Data:array of integer;
selanjutnya, fungsi quick sortnya nih :: (ketik dibawah $R.dfm)
//fungsi quick sort
procedure QuickSort(var A: array of integer; iLo,iHi: integer);
var
Lo,Hi,Pivot,T : integer;
begin
Lo:=iLo;
Hi:=iHi;
Pivot:=A[(Lo+Hi)div 2];
repeat
while A[Lo] < Pivot do Inc(Lo);
while A[Hi] > Pivot do Dec(Hi);
if Lo <= Hi then
begin
T:=A[Lo];
A[Lo]:=A[Hi];
A[Hi]:=T;
Inc(Lo);
Dec(Hi);
end;
until Lo > Hi;
if Hi > iLo then QuickSort(A,iLo,Hi);
if Lo < iHi then QuickSort(A,Lo,iHi);
end;
lanjut...ke button click yang pertama ya..
procedure TDyahNaufal_2b.Button1Click(Sender: TObject);
var
nilai : integer;
begin
//validasi inputan yang akan ditambahkan
if trystrtoint(Edit1.Text,nilai) then ListBox1.Items.Add(inttostr(nilai));
end;
ke button click selanjutnya temaan...
procedure TDyahNaufal_2b.Button2Click(Sender: TObject);
var
indek : word;
begin
//menentukan panjang array
SetLength(Data,ListBox1.Items.Count);
//pemasukan nilai ke array
for indek:=0 to ListBox1.items.Count - 1 do
Data[indek]:=strtoint(ListBox1.Items[indek]);
//proses pengurutan
Quicksort(data,Low(Data),High(Data));
//kosongkan hasil
ListBox2.Items.Clear;
//memasukkan nilai hasil
for indek :=0 to ListBox1.Items.Count - 1 do
ListBox2.Items.Add(inttostr(data[indek]));
end;
yang terakhirr button exit cukup ketik ini ::
procedure TDyahNaufal_2b.Button3Click(Sender: TObject);
begin
close;
end;
end.
sudaaah... tekan F9 yaa.. running dehhh.. ::
hasilnyaaa..:: tarrraa...::
Tidak ada komentar:
Posting Komentar