Program dengan Menggunakan Selection Sort
[Ascending-Bahasa Pascal]
Program ini merupakan salah satu contoh penggunaan fungsi sorting yaitu dengan menngunakan Selection Sort dan menggunakan compiler Pascal. Pada program ini menggunakan urutan Ascending, yaitu mengurutkan dari yang terkecil ke yang terbesar. Namun, dalam Selection Sort ada cara mengurutkan dengan Ascending dan Descending.
Untuk lebih detailnya silahkan dicoba program berikut ini dan liat perbedaanya.
--------------------------------------------------------------------------------------------------------
program selection_sort; {ascending}
uses crt;
type data= record
nama,nim : string;
ipk : real;
end;
var
mhs : array [1..10] of data;
i,j,n : integer;
temp : real;
pilih : char;
procedure input;
begin
clrscr;
write('Masukkan Jumlah Mahasiswa : '); readln(n);
for i := 1 to n do
begin
clrscr;
writeln('Data ke- ', i);
write ('Nama : '); readln(mhs[i].nama);
write ('NIM : '); readln(mhs[i].nim);
write ('IPK : '); readln(mhs[i].ipk);
end;
end;
procedure hasil;
begin
clrscr;
writeln('HASIL');
for i:=1 to n do
begin
writeln;
writeln('Hasil Data Ke-',i);
writeln('NIM : ',mhs[i].nim);
writeln('NAMA : ',mhs[i].nama);
writeln('IPK : ',mhs[i].ipk:2:2);
end;
readkey;
end;
procedure seleksi;
var max: integer;
temp: data;
begin
for i:=1 to n-1 do
begin
max:=i;
for j:= i+1 to n do
if mhs[j].ipk< mhs[max].ipk then
max:=j;
temp:= mhs[max];
mhs[max]:= mhs[i];
mhs[i]:= temp;
end;
hasil;
end;
begin
input;
seleksi;
end.