Di bawah ini adalah contoh program mengurutkan data dengan 3 metode sort :
1. Bubble Sort
2. Selection Sort
3. Insert Sort
Semoga bermanfaat....
program sort;
uses crt;
label a,B;
var
data: array [1..9] of integer;
i,pil,jmldata:integer;
hit : string;
Procedure TukarData(var a,b : integer);
Var c : word;
Begin
c:=a;
a:=b;
b:=c;
end;
Procedure cetakdata;
var i : integer;
begin
writeln(' ');
for i:=1 to jmldata do
begin
write(data[i],', ');
end;
end;
Procedure Asc_Bubble;
Var i,j,k : integer;
Begin
For i:= 2 to jmldata do
begin
For j:= jmldata downto I do
If data[j] < data[j-1] then
Tukardata (data[j], data[j-1]);
cetakdata;
end;
readln;
end;
Procedure Asc_Selection;
Var pos,j ,k: byte;
Begin
For i:= 1 to jmldata-1 do
Begin
Pos:=i;
For j:= i+1 to jmldata do
If data[j] < data[pos] then pos:=j;
If i <> pos then tukardata(data[i],data[pos]);
cetakdata;
end;
readln;
end;
procedure asc_insert;
var temp,j,k:integer;
begin
For i := 2 to jmldata do
Begin
Temp :=data[i];
j := i-1;
while (data[j] > temp) and (j>0) do
begin
data[j+1] := data[j];
dec(j);
end;
data[j+1]:=temp;
cetakdata;
end;
readln;
end;
begin
clrscr;
gotoxy(29,8);textcolor(lightgray);write('PROGRAM PENGURUTAN DATA (SORT)');
gotoxy(27,10);textcolor(yellow);write('Dibuat oleh : Muh.Ibnu Faisal');
gotoxy(27,11);write('NIM : M 3108107');
gotoxy(50,24);Textcolor(lightgreen);write('nyuwun tulung TEKAN ENTER !!!');
readln;
clrscr;
B:
clrscr;
writeln('PROGRAM SORT');
writeln('------------------------------');
write('Masukkan jumlah data (maksimal 10): '); readln(jmldata);
writeln('masukkan ',jmldata,' data ');
for i:= 1 to jmldata do
begin
write('Data ke - ',i,' = ');readln(data[i]);
end;
a: writeln;
writeln(' Metode Sort');
writeln('==================');
writeln('1. Bubble Sort');
writeln('2. Selection Sort');
writeln('3. Insert Sort');
writeln('4. Keluar');
writeln;
write('PILIHAN ANDA ? ');read(pil);
if (pil>4) or (pil<0) then begin
writeln('Masukan Anda Salah');
readln;
goto a;
end;
writeln;
case pil of
1:asc_bubble;
2:Asc_Selection;
3:asc_insert;
4:exit;
end;
writeln;
textcolor(white);
writeln;
gotoxy(25,21);write('Menghitung lagi ??');
gotoxy(25,22);write('* Tekan angka 1 jika YA');
gotoxy(25,23);write('* Tekan angka 2 jika TIDAK');
writeln;
gotoxy(25,24);write('Pilihan anda =',' '); readln(hit);
if hit='1' then goto B else exit;
readln;
end.
Senin, Juli 27
Mengurutkan Data dengan 3 Metode Sort
Langgan:
Poskan Komentar (Atom)
0 comments:
Poskan Komentar