Kamis, 19 Mei 2011

Program Array dalam record

sekripnya sebagai berikut :

uses wincrt;
type
petunjuk_pegawai=^Data_pegawai;
Data_pegawai =record
NIP :string[9];
Nama: string[25];
Gaji : real;
end;
var Data_pegawaix : array[1..20] of petunjuk_pegawai;
i,j,n : byte;
t1,t2 : string;
t3 :real;
begin
write('banyaknya data :');readln(n);
for i := 1 to n do
begin
writeln;
writeln('data pegawai ke',i:2);
New(data_pegawaix[i]);
with data_pegawaix[i] ^ do
begin
write('NIP............:'); readln(Nip);
write('Nama Pegawai...:'); readln(Nama);
write('Gaji Pokok Rp'); readln(Gaji);
end;
end;
clrscr;
writeln(' DATA PEGAWAI PT. MAJU MUNDUR ');
writeln(' No. | N I P | NAMA PEGAWAI | GAJI POKOK ');
writeln('-----------------------------------------------------');
for i := 1 to n do
with Data_pegawaix[i]^do
writeln(i:3,' | ',Nip:8,' | ',Nama:21,' | Rp ',Gaji:8:2);
for i := 1 to n do
begin
for j := i to n do
begin
if Data_pegawaix[i]^.Nip > Data_pegawaix[j]^.Nip then
begin
t1 := Data_pegawaix[i]^.Nip ;
Data_pegawaix[i]^.Nip := Data_pegawaix[j]^.Nip ;
Data_pegawaix[j]^.Nip :=t1;
t2 := Data_pegawaix[i]^.Nama ;
Data_pegawaix[i]^.Nama := Data_pegawaix[j]^.Nama ;
data_pegawaix[j]^.Nama := t2;
t3 := Data_pegawaix[i]^.Gaji ;
Data_pegawaix[i]^.Gaji := Data_pegawaix[j]^.Gaji ;
data_pegawaix[j]^.Gaji := t3;
end;
end;
end;
writeln('======================================================');
writeln(' sorting Berdasarkan Nip ');
writeln('------------------------------------------------------');
for i := 1 to n do
with Data_pegawaix[i]^ do
writeln(i:3,' | ',Nip:8,' | ',Nama:21,' | Rp ',Gaji:8:2);
writeln('------------------------------------------------------');




end.

0 komentar:

Posting Komentar

 
Design by Free Wordpress Themes | Bloggerized by Free Blogger Templates | Walgreens Printable Coupons