Posted by Materi Teknik Informatika • Informasi Teknologi Informasi • Digital Marketing on 4/20/2015
 
Berikut ini source code data pegawai menggunakan compiler dev-pascal :
 
uses crt;
type
pkj=record
   nama: string[25];
   lama_kerja: integer;
   pendidikan: string[3];
   golongan: char;
   jabatan: string[20];
   gaji_pokok: real;
   tunjangan: real;
   total_gaji: real;
end;
var
   p: pkj;
   lagi: char;
begin
clrscr;
   lagi:='y';
   while upcase(lagi)='Y' do
   begin
   clrscr;
      gotoxy(30,2); write('INPUT DATA PEKERJA');
      gotoxy(3,3) ; write('____________________________________________________________________________');
      gotoxy(3,5) ; write('Nama                   : '); readln(p.nama);
      gotoxy(3,7) ; write('Lama Kerja (Tahun)     : '); readln(p.lama_kerja);
      gotoxy(3,9) ; write('Pendidikan (sma,d3,s1) : '); readln(p.pendidikan);
         if p.lama_kerja <= 5 then
            begin
            if p.pendidikan='sma' then
               begin
                  p.golongan:='1';
                  p.jabatan:='Office Boys';
               end
            else
            if p.pendidikan='d3' then
               begin
                  p.golongan:='2';
                  p.jabatan:='Staff Administrasi';
               end
            else
            if p.pendidikan='s1' then
               begin
                  p.golongan:='3';
                  p.jabatan:='Kasi';
               end
            end
            else
          if p.lama_kerja <= 10 then
            begin
            if p.pendidikan='sma' then
               begin
                  p.golongan:='2';
                  p.jabatan:='Staff Administrasi';
               end
            else
            if p.pendidikan='d3' then
               begin
                  p.golongan:='3';
                  p.jabatan:='Kasi';
               end
            else
            if p.pendidikan='s1' then
               begin
                  p.golongan:='4';
                  p.jabatan:='Kabag';
               end
            end
            else
            if p.lama_kerja > 10 then
            begin
            if p.pendidikan='sma' then
               begin
                  p.golongan:='3';
                  p.jabatan:='Kasi';
               end
            else
            if p.pendidikan='d3' then
               begin
                  p.golongan:='4';
                  p.jabatan:='Kabag';
               end
            else
            if p.pendidikan='s1' then
               begin
                  p.golongan:='5';
                  p.jabatan:='Manager';
               end
            end;
      gotoxy(3,11); write('Golongan    : ',p.golongan);
      gotoxy(3,13); write('Jabatan     : ',p.jabatan);
            if p.golongan='1' then
               begin
                  p.gaji_pokok:=700000;
                  p.tunjangan:=20*p.gaji_pokok/100;
               end
               else
            if p.golongan='2' then
               begin
                  p.gaji_pokok:=900000;
                  p.tunjangan:=18*p.gaji_pokok/100;
               end
               else
            if p.golongan='3' then
               begin
                  p.gaji_pokok:=1200000;
                  p.tunjangan:=17*p.gaji_pokok/100;
               end
               else
            if p.golongan='4' then
               begin
                  p.gaji_pokok:=1700000;
                  p.tunjangan:=15*p.gaji_pokok/100;
               end
               else
            if p.golongan='5' then
               begin
                  p.gaji_pokok:=2200000;
                  p.tunjangan:=12*p.gaji_pokok/100;
               end;
      gotoxy(3,15); write('Gaji Pokok  : ',p.gaji_pokok:8:0);
      gotoxy(3,17); write('Tunjangan   : ',p.tunjangan:8:0);
      p.total_gaji:=p.gaji_pokok+p.tunjangan;
      gotoxy(3,19); write('Total Gaji  : ',p.total_gaji:8:0);
      gotoxy(3,23); write('MASUKAN DATA LAGI ? ');
readln(lagi);
end;
end.