Breaking News
Loading...
, ,

Membuat Program Penggajian Pegawai Dengan Pascal (Versi 2)

Share on Google Plus

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;
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.
Berikut tampilan programnya :
Lihat juga :
program penggajian pegawai dengan pascal (versi 1), di sini.
program penggajian pegawai dengan pascal (versi 3) di sini.

File bisa di download disini

You Might Also Like

0 comments

About

danikustiawan.id adalah personal blog yang dikelola secara pribadi. Tujuan utama hadirnya blog ini adalah untuk mempererat tali silaturahmi, menambah pengetahuan, dan menyalurkan hobby. Terimakasih telah berkunjung, jangan lupa subscribe dan selalu berkunjung.

danikustiawan.id on social media