program sort data menggunakan bahasa pemrograman Pascal

berikut coding untuk membuat program dan tampilan output lengkap :

PROGRAM tugas_membuat_program_menggunakan_sorting_data;
uses wincrt;
const
garis='-----------------------------';
var
Kelas     :array [1..100]of string[5];
NPM       :array[1..100]of string[10];
Nama      :array[1..100]of string[15];
n,i,bar,kelompok,tempatnya_min,pil: Integer;
min,temp:string;
label Menu;
label exit;
begin
clrscr;
write('mau isi berapa data :');
readln(n);
for i:= 1 to n do
begin
clrscr;
GOTOXY(30,4);WRITE('DATA KE-',i:2);
GOTOXY(10,7);WRITE('NPM  :') ; READLN(NPM[i]);
GOTOXY(10,8);WRITE('NAMA :'); READLN(NAMA[i]);
GOTOXY(10,9);WRITE('KELAS:'); READLN(KELAS[i]);
END;
MENU:
CLRSCR;
WRITELN('MASUKAN PILIHAN ANDA :');
WRITELN('1.URUTKAN BERDASARKAN KELAS');
WRITELN('2.URUTKAN BERDASARKAN NAMA');
WRITELN('3.EXIT');
WRITE ('PILIH PILIHAN ANDA :');READLN(PIL);
CASE PIL OF
1:FOR KELOMPOK := 1 TO N DO
BEGIN
MIN:=KELAS[KELOMPOK];
FOR I :=KELOMPOK TO N DO
BEGIN
IF (KELAS [i] <= MIN) THEN
BEGIN
MIN:=KELAS[I];
TEMPATNYA_MIN:=i;
END;
TEMP := KELAS[KELOMPOK];
KELAS[KELOMPOK]:=KELAS[TEMPATNYA_MIN];
KELAS[TEMPATNYA_MIN]:=TEMP;
TEMP:= NAMA[KELOMPOK];
NAMA[KELOMPOK]:=NAMA[TEMPATNYA_MIN];
NAMA[TEMPATNYA_MIN]:=TEMP;
TEMP :=NPM[KELOMPOK];
NPM[KELOMPOK]:= NPM[TEMPATNYA_MIN];
NPM[TEMPATNYA_MIN]:= TEMP;
END;
END;
2:FOR KELOMPOK := 1 TO N DO
BEGIN
MIN := NAMA [KELOMPOK];
FOR i:= KELOMPOK TO N DO
BEGIN
IF (NAMA[i] <=MIN)THEN
BEGIN
MIN:= NAMA[i];
TEMPATNYA_MIN:=i;
END;
END;
TEMP:=KELAS[KELOMPOK];
KELAS[KELOMPOK] :=KELAS[TEMPATNYA_MIN];
KELAS[TEMPATNYA_MIN]:=TEMP;
TEMP:=NAMA[KELOMPOK];
NAMA[KELOMPOK]:=NAMA[TEMPATNYA_MIN];
NAMA[TEMPATNYA_MIN]:=TEMP;
TEMP:=NPM[KELOMPOK];
NPM[KELOMPOK]:=NPM[TEMPATNYA_MIN];
NPM[TEMPATNYA_MIN]:=TEMP;
END;
3: GOTO EXIT;
end;
clrscr;
gotoxy(5,4);write(garis);
gotoxy(5,5);write('no');
gotoxy(9,5);write ('NPM');
gotoxy(20,5);write('nama');
gotoxy(37,5);write('Kelas');
gotoxy(47,5);write ('paraf');
gotoxy(5,6);write(garis);
{proses cetak isi array di absen}
bar:=7;
for i:=1 TO N DO
begin
{penempatan cetak array}
gotoxy(5,bar);writeln(i:2);
gotoxy(9,bar);writeln(npm[i]);
gotoxy(20,bar);writeln(nama[I]);
gotoxy(37,bar);writeln (kelas[I]);
gotoxy(47,bar);writeln(i,'............');
bar:=bar + 1;
end;
gotoxy(5,bar+1);writeln(garis);
readln;
goto menu;
exit:
end.

BERIKUT TAMPILAN OUTPUT  :


 










setelah pilihan 3 dipilih kemudian di enter, maka program akan keluar.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s