Inputannya berupa data-data pegawai yang nantinya menghasilkan output gaji bersih berdasarkan dari golongan kerja ditambah dengan tunjangan berdasarkan jumah anak dan potongan 5% pajak dari gaji pokok, yang nantinya di tampilan dalam bentuk table,,,
Code Pascal:
uses wincrt;
type Pegawai = record
id:string[9];
nama:string[50];
tempat:string[50];
tgl:string[50];
alamat:string[50];
gol:string;
anak:integer;
end;
var
data:pegawai;
gp,tunj,pjk,gbersih:real;
ulang:char;
begin
repeat
clrscr;
writeln('======================================================================');
gotoxy(15,2);writeln('ENTRI DATA PEGAWAI');
writeln('======================================================================');
gotoxy(8,5);write('No Identitas : ');readln(data.id);
gotoxy(8,6);write('Nama : ');readln(data.nama);
gotoxy(8,7);write('Tempat Lahir : ');readln(data.tempat);
gotoxy(8,8);write('Tanggal Lahir : ');readln(data.tgl);
gotoxy(8,9);write('Alamat : ');readln(data.alamat);
gotoxy(8,10);write('Golongan : ');readln(data.gol);
gotoxy(8,11);write('Jumlah Anak : ');readln(data.anak);
writeln;
writeln;
if data.gol = '1a' then gp:=1040000
else if data.gol = '2a' then gp:=1320300
else if data.gol = '2b' then gp:=1650000
else if data.gol = '2c' then gp:=1720000
else if data.gol = '2d' then gp:=1793000
else if data.gol = '3a' then gp:=1783000
else gp:=2051000;
case data.anak of
1:tunj:=300000;
2:tunj:=600000;
else
tunj:=900000;
end;
pjk:=5/100*gp;
gbersih:=gp+tunj-pjk;
writeln('==========================================================================');
writeln('| Id | Nama | Gol | Gaji Pokok | Tunjangan | Pajak | Gaji Bersih |');
writeln('==========================================================================');
writeln('|',data.id:4,'|',data.nama:9,'|',data.gol:5,'|',gp:12:0,'|',tunj:9:0,'|',pjk:7:0,'|',gbersih:14:0,'|');
writeln('==========================================================================');
writeln;
Write('Tekan "Y" untuk ulang dan "T" untuk close (Y/T) : '); readln(ulang);
Until Upcase(ulang) <> 'Y';
end.
