Senin, 08 Juni 2015

kasus pembayaran gaji pegawai

uses crt;
var
   pil:integer;
   jawab:char;
label
     p1,p2,p3,p4;

procedure gaji;
 var
   nama:string[35];
   ja:integer;
   gol:integer;
   status:char;
   gp,tg,tistri,tanak,tunjangan:real;

   begin
        writeln('HITUNG GAJI PEGAWAI');
        writeln('-------------------');
        writeln;
        write('Masukkan Nama Pegawai = '); readln(nama);
        write('Masukkan Golongan[1/2/3] = ' );readln(gol);
        if (gol=1) then
                       begin
                            gp:=200000;
                       end
        else if (gol=2) then
                            begin
                                 gp:=300000;
                            end
        else if (gol=3) then
                            begin
                                 gp:=400000;
                            end
        else
            begin
                 writeln('Golongan Salah');
                 gp:=0;
            end;
        write('Masukkan Status[K/B] = ' ); readln(status);
        begin
             if (status='K') or (status='k') then
                begin
                     write('Masukkan jumlah anak = ' );readln(ja);
                     tistri:=(0.50*gp);
                     tanak:=ja*(0.25*gp);
                     tunjangan:=tistri+tanak;
                     tg:=gp+tunjangan;
                     end
             else
                 begin
                      tunjangan:=0;
                      tg:=gp;
                 end;
        end;
            writeln;
            writeln('Nama Karyawan : ',nama);
            writeln('Status        : ',status);
            writeln('Total Gaji    :Rp. ',tg:1:0);
        end;

procedure hotel;
var
   nama:string[35];
   kk:string;
   inap,tk:integer;
   biaya,diskon,ppn,bayar:real;
   begin
        writeln('Program HOTEL ');
        writeln('--------------');
        write('Masukkan nama tamu : ' ); readln(nama);
        writeln('Kelas Kamar');
        writeln('1.Eko');
        writeln('2.Exe');
        writeln('3.VIP');
        write('Pilih kelas kamar [1/2/3] : '); readln(tk);

        if (tk=1) then
                        begin
                              kk:='Ekonomi';
                              biaya:=500000;
                        end
        else if (tk=2) then
                           begin
                                 kk:='Executive';
                                 biaya:=700000;
                           end
        else if (tk=3) then
                           begin
                                 kk:='VIP';
                                 biaya:=1000000;
                           end
        else
            begin
                 biaya:=0
            end;

            write('Lama Menginap : ' ); readln(inap);
                        if (inap>10) then
                                         begin
                                              diskon:=(2/100)*biaya;
                                              ppn:=(10/100)*biaya;
                                              bayar:=(biaya-diskon)+ppn;
                                         end
                        else
                            begin
                                 diskon:=0;
                                 ppn:=0;
                                 bayar:=biaya;
                            end;

                            writeln;
                            writeln('Nama Tamu  : ' ,nama);
                            writeln('Tipe Kamar : ' ,kk);
                            writeln('Biaya      : Rp.' ,biaya:1:0);
                            writeln('Diskon     : Rp.' ,diskon:1:0);
                            writeln('PPN        : Rp.' ,ppn:1:0);
                            writeln('Total Bayar: Rp.' ,bayar:1:0);
                            writeln;
                        end;
procedure penjualan;
var
   nb:string;
   kb:string;
   jumlah:integer;
   hs,total,potongan,nbr:real;

   begin
        write('Masukkan Kode Barang [R33/S44/K55] : '); readln(kb);
          if (kb='R33') then
                           begin
                                 nb:='Ban Radial';
                                 hs:=75000;
                           end
          else if (kb='S44') then
                                 begin
                                       nb:='Sadel';
                                       hs:=50000;
                                 end
          else if (kb='K55') then
                                 begin
                                      nb:='Knalpot';
                                      hs:=150000;
                                 end
          else
              begin
                   nb:='Tidak Tersedia';
                   hs:=0;
              end;
              write('Jumlah terjual        : '); readln(jumlah);
              total:=jumlah*hs;

              if (jumlah>5) or (total>75000) then
                                                  begin
                                                        potongan:=(8/100)*total;
                                                  end
              else
                  begin
                       potongan:=0;
                  end;
                                        nbr:=(total)-(potongan);
                                        writeln;
                                        writeln('Nama Barang    : ' ,nb);
                                        writeln('Kode barang    : ' ,kb);
                                        writeln('Jumlah terjual : ' ,jumlah);
                                        writeln('Harga Satuan   :Rp. ' ,hs:1:0);
                                        writeln('Total          :Rp. ' ,total:1:0);
                                        writeln('Potongan       :Rp. ' ,potongan:1:0);
                                        writeln('Nilai Bersih   :Rp. ' ,nbr:1:0);
                  end;
   begin
        clrscr;
        p1:
        writeln('MENU PILIHAN');
        WRITELN('------------');
        writeln('1. Menghitung Gaji ');
        writeln('2. Data Hotel');
        writeln('3. Penjualan');
        writeln('4. Keluar');
        write('Masukkan Pilihan anda [1/2/3/4] : ' ); readln(pil);
        if (pil=1) then
                          begin
                          CLRSCR;
                                p2:
                                gaji;
                                write('Masih Mau ? [Y/N] : '); readln(jawab);
                                if (jawab='Y') or (jawab='y') then
                                                               begin
                                                                    goto p2;
                                                               end
                                else
                                      begin
                                           goto p1;
                                      end;
                          end
        else if (pil=2) then
                              begin
                              CLRSCR;
                                     p3:
                                     hotel;
                                     write('Masih Mau ? [Y/N] : '); readln(jawab);
                                     if (jawab='Y') or (jawab='y') then
                                                                       begin
                                                                            goto p3;
                                                                       end
                                     else
                                         begin
                                              goto p1;
                                         end;
                              end
        else if (pil=3) then
                            begin
                            CLRSCR;
                                  p4:
                                  penjualan;
                                  write('Masih Mau ? [Y/N] : '); readln(jawab);
                                  if (jawab='Y') or (jawab='y') then
                                                                      begin
                                                                           goto p4;
                                                                      end
                                  else
                                       begin
                                             goto p1;
                                       end;
                            end
        else
            begin
                 exit;
            end;

            readln;
            end


Tidak ada komentar:

Posting Komentar