Posting kejar tayang lagi, kali ini saya akan berbagi tentang membuat program penggajian pegawai menggunakan pascal (lagi) tetapi dengan melakukan revisi pada beberapa bagian program sebelumnya (klik disini).
Seperti pada program sebelumnya, kali ini masih menggunakan procedure dalam pembuatannya. 80% sama lah pokoknya. Langsung saja cek dibawah.
program gaji_pegawai;Berikut tampilan programnya :
uses wincrt;
var
nm,jab,sts,tmplhr:string;
gaji,tunjank,gatot,anak,tunjkwn,nip:real;
d,m,y:integer;
ulang:char;
procedure dir;
begin
write ('Status Perkawinan [N/B] : '); readln(sts);
if sts = 'N' then
begin
write ('Masukkan Jumlah Anak : '); readln(anak);
gaji:=2000000;
if anak>=3 then
tunjank:=3*(0.1*gaji)
else
tunjank:=anak*(0.1*gaji);
tunjkwn:=gaji*0.03;
gatot:=gaji+tunjank+tunjkwn;
writeln('Gaji Pokok : ',gaji:0:0);
writeln('Tunjangan Nikah : ',tunjkwn:0:0);
writeln('Tunjangan Anak : ',tunjank:0:0);
writeln('Gaji Total : ',gatot:0:0);
end
else
if sts = 'B' then
begin
gaji:=2000000;
writeln('Gaji Total : ',gaji:0:0);
end
else
writeln('Kode yang Anda Masukkan salah! Gunakan huruf kapital');
end;
procedure mgr;
begin
write ('Status Perkawinan [N/B] : '); readln(sts);
if sts = 'N' then
begin
write ('Masukkan Jumlah Anak : '); readln(anak);
gaji:=1500000;
if anak>=3 then
tunjank:=3*(0.1*gaji)
else
tunjank:=anak*(0.1*gaji);
tunjkwn:=gaji*0.03;
gatot:=gaji+tunjkwn+tunjank;
writeln('Gaji Pokok : ',gaji:0:0);
writeln('Tunjangan Jabatan : ',tunjkwn:0:0);
writeln('Tunjangan Anak : ',tunjank:0:0);
writeln('Gaji Total : ',gatot:0:0);
end
else
if sts = 'B' then
begin
gaji:=1500000;
writeln('Gaji Total : ',gaji:0:0);
end
else
writeln('Kode yang Anda Masukkan salah! Gunakan huruf kapital');
end;
procedure spv;
begin
write ('Status Perkawinan [N/B] : '); readln(sts);
if sts = 'N' then
begin
write ('Masukkan Jumlah Anak : '); readln(anak);
gaji:=1000000;
if anak>=3 then
tunjank:=3*(0.1*gaji)
else
tunjank:=anak*(0.1*gaji);
tunjkwn:=gaji*0.03;
gatot:=gaji+tunjkwn+tunjank;
writeln('Gaji Pokok : ',gaji:0:0);
writeln('Tunjangan Nikah : ',tunjkwn:0:0);
writeln('Tunjangan Anak : ',tunjank:0:0);
writeln('Gaji Total : ',gatot:0:0);
end
else
if sts = 'B' then
begin
gaji:=1000000;
writeln('Gaji Total : ',gaji:0:0);
end
else
writeln('Kode yang Anda masukkan salah! Gunakan huruf kapital');
end;
procedure gol;
begin
write ('Golongan [1/2/3] : '); readln(jab);
if jab = '1' then
dir
else
if jab = '2' then
mgr
else
if jab = '3' then
spv
else
writeln('Kode yang Anda masukkan salah');
end;
procedure menu;
begin
clrscr;
writeln('==============================================');
writeln;
writeln(' Program Gaji Pegawai ');
writeln;
writeln('==============================================');
writeln;
write ('NIP : '); readln(nip);
write ('Nama : '); readln(nm);
write ('Tempat Lahir : '); readln(tmplhr);
writeln('Contoh Format Tanggal [12 12 1994] Gunakan spasi');
write ('Tanggal Lahir [DD MM YYYY] : '); readln(d,m,y);
case m of
1,3,5,7,8,10,12:begin
if (d>31) then
writeln('Tanggal salah')
else
gol;
end;
4,6,9,11:begin
if (d>30) then
writeln('Tanggal salah')
else
gol;
end;
2:begin
if (y mod 4=0) then
begin
if (d>29) then
writeln('Tanggal salah')
else
gol;
end
else
begin
if (d>28) then
writeln('Tanggal salah')
else
gol;
end;
end;
end;
end;
begin
repeat
menu;
write ('Ulangi Lagi [Y/T] ? '); readln(ulang);
until upcase (ulang) <> 'Y';
donewincrt;
end.
program penggajian pegawai dengan pascal (versi 1), di sini.
program penggajian pegawai dengan pascal (versi 3) di sini.
File bisa di download disini
0 comments