16 Juni 2011

Program Pengurutan Gelembung, Pilih Maksimum, Pilih Minimum dengan Pascal

Fiuhh...akhirnya selesai juga nih tugas, udah hampir dua jam nih otak atiknya. hehe, kali ini kita akan belajar bagaimana cara membuat program pengurutan dengan pascal. 

Metode pengurutan yang di gunakan adalah metode gelembung, pilih maksimum, dan pilih minimum. ke tiga metode itu kita gabung jadi satu program biar ga ribet, hehe...

Hmmm oh ya sahabatku, mungkin beberapa hari ini saya ga bakalan mosting  nih, soalnya minggu depan mau ujian semester di kampus, mohon do'anya yah. ^_^
eh, kok jadi curhat sih?? upss kelupaan ya udah deh, berhubung udah malam, langsung aja liat programnya yah...semoga mebantu ^_^

Program Pengurutan_apa_aja_boyee;
uses wincrt ;
type
Larik = array [1..1000] of integer;
Var
H : Larik;
stop : integer;
 
Procedure Input ( Var H : Larik; m : integer );
var
n : integer;
begin
for n := 1 to m do
begin
write ('Data Ke-',n,' : ');readln(H[n]);
end;
end;
 
Procedure BubbleNaik ( Var H : Larik; m : integer );
var
k, l, temp : integer;
begin
for k := 1 to (m-1) do
for l := m downto (k+1) do
if H[l] < H[l-1] then
begin temp := H[l];
H[l] := H[l-1];
H[l-1] := temp;
end;
end;

Procedure BubbleTurun ( Var H : Larik; m : integer );
var k, l, temp : integer;
begin
for k := 1 to (m-1) do
for l := m downto (k+1) do
if H[l] > H[l-1]
then
begin
temp := H[l];
H[l] := H[l-1];
H[l-1]:= temp;
end;
end;
 
Procedure Selection_Max_Naik ( Var H: Larik; m : integer );
var
o, p, omaks, temp : integer;
begin
for o := m downto 2 do
begin
omaks := 1;
for p := 2 to o do
if H[p] > H[omaks] then
omaks := p;
temp := H[o];
H[o] := H[omaks];
H[omaks] := temp;
end;
end;
 
Procedure Selection_Max_Turun ( Var H : Larik; m : integer );
var o, p, omaks, temp : integer;
begin
for o := 1 to (m-1) do
begin
omaks := o;
for p := o + 1 to m do
if H[p] > H[omaks]
then
omaks := p;
temp := H[o];
H[o] := H[omaks];
H[omaks] := temp;
end;
end;
 
Procedure Selection_Min_Naik ( Var H : Larik; m : integer );
var
x, y, xmin, temp : integer;
begin
for x := 1 to (m-1) do
begin
xmin := x;
for y := x + 1 to m do
if H[y] < H[xmin] then
xmin := y;
temp := H[x];
H[x] := H[xmin];
H[xmin]:= temp;
end;
end;

Procedure Selection_Min_Turun ( Var H : Larik; m : integer );
var
x, y, xmin, temp : integer;
begin
for x := m downto 2 do
begin
xmin := 1;
for y := 2 to x do
if H[y] < H[xmin] then
xmin := y;
temp := H[x];
H[x] := H[xmin];
H[xmin]:= temp;
end;
end;
 
Procedure OutPut ( m : integer );
var
r : integer;
begin
for r := 1 to m do
write (H[r]:5);
end;
Begin
write ('Masukkan Jumlah Data yang diinginkan : ');readln(stop); writeln;
writeln('Masukkan Data Secara Acak : ');
Input (H,stop);writeln;
BubbleNaik(H,stop);
write('a. Hasil Pengurutan Gelembung Menaik :');writeln;
OutPut(stop);writeln;
BubbleTurun(H,stop);
write('   HasilPengurutan Gelembung Menurun :');writeln;
OutPut(stop);writeln;
Selection_Max_Naik(H,stop);writeln;
write('b. Hasil Pengurutan Seleksi Maksimum Menaik :');writeln;
Output(stop);
Selection_Max_Turun(H,stop);writeln;
write('   Hasil Pengurutan Seleksi Maksimum Menurun :');writeln;
OutPut(stop);writeln;
Selection_Min_Naik(H,stop);writeln;
write('c. Hasil Pengurutan Seleksi Minimum Menaik :');writeln;;
OutPut(stop);
Selection_Min_Turun(H,stop);writeln;
write('   Hasil Pengurutan Seleksi Minimum Menurun :');writeln;;
OutPut(stop);writeln;
writeln ('                =================================') ;
writeln ('                      ©DiditMaster Rinjano©');
writeln ('                      WHEN SANGKALA TALKING') ;
writeln ('                http://didit-rinjano.blogspot.com/');
writeln ('                =================================') ;
End.


Setelah di run, akan muncul penampakan berikut :

 

Share on Facebook
Share on Twitter
Share on Google+

Related : Program Pengurutan Gelembung, Pilih Maksimum, Pilih Minimum dengan Pascal

0 Komentar:

Posting Komentar

Terimakasih telah meninggalkan Komentar di Didit Blog | Silahkan berkomentar dengan bebas, tidak mengandung SARA | komentar dengan link HIDUP akan dihapus | Terimakasih ^_^