Rabu, 11 April 2012

Gaji Pegawai dengan Method Static

share

public class HitungGaji {
    public static double hitungGajiLembur(int jumlahJamKerja,
            int jamDefault, int upahPerJam) {
        return (jumlahJamKerja-jamDefault)*upahPerJam;
    }
}

public class Pegawai {
    private String nama;
    private String nip;
    private int golongan;
    private int tunjangan;
    private int jumlahJamKerja;
    private int jamDefault;
    private int upahPerJam;
   
    public Pegawai(String nam, String nip, int gol, int tun,
            int jum, int jam, int upah) {
        this.nama = nam;
        this.nip  = nip;
        this.golongan = gol;
        this.tunjangan = tun;
        this.jumlahJamKerja = jum;
        this.jamDefault = jam;
        this.upahPerJam = upah;
    }
   
    public String getNama() {
        return nama;
    }
    public String getNip() {
        return nip;
    }
    public int getGolongan() {
        return golongan;
    }
    public int getTunjangan() {
        return tunjangan;
    }
   
    public void setNama(String nama) {
        this.nama = nama;
    }
    public void setNip(String nip) {
        this.nip = nip;
    }
    public void setGolongan(int golongan) {
        this.golongan = golongan;
    }
    public void setTunjangan(int tunjangan) {
        this.tunjangan = tunjangan;
    }
   
    public int Golongan() {
        int gaji;
        if(golongan == 1) {
            gaji = 500000;
            return gaji;
        }
        else if (golongan == 2) {
            gaji = 750000;
            return gaji;
        }
        else {
            gaji = 1000000;
            return gaji;
        }
    }
    public int Tunjangan() {
        int tunjang;
        if(tunjangan == 1) {
            tunjang = 0;
            return tunjang;
        }
        else if(tunjangan == 2) {
            tunjang = 75000;
            return tunjang;
        }
        else if (tunjangan == 3) {
            tunjang = 50000;
            return tunjang;
        }
        else {
            tunjang = 125000;
            return tunjang;
        }
    }
    public double GajiLembur() {
        double bonus = HitungGaji.hitungGajiLembur
                (jumlahJamKerja, jamDefault, upahPerJam);
        return bonus;
    }
    public double Gaji() {
        return(Golongan()+Tunjangan()+GajiLembur());
    }
}

import java.util.Scanner;
public class MainPegawai {
    public static void main(String[] args) {
        System.out.printf("Masukkan Nama = ");
        String nam = new Scanner(System.in).nextLine();
       
        System.out.printf("Masukkan Nip = ");
        String nip = new Scanner(System.in).nextLine();
       
        System.out.printf("Masukkan Golongan [1=500000(1),2=750000(2),"
                + "3=1000000(3)] = ");
        int gol = new Scanner(System.in).nextInt();
       
        System.out.printf("Masukkan Tunjangan [Bujang=0(1),Istri/Suami=75000(2)"
                + ",Anak=50000(3),Istri/Suami&Anak=125000(4)] = ");
        int tun = new Scanner(System.in).nextInt();
       
        System.out.printf("Masukkan Jumlah Jam Kerja = ");
        int jum = new Scanner(System.in).nextInt();
       
        System.out.printf("Masukkan Jam Default = ");
        int jam = new Scanner(System.in).nextInt();
       
        System.out.printf("Masukkan Upah Per Jam = ");
        int upah = new Scanner(System.in).nextInt();
       
        Pegawai staf = new Pegawai(nam, nip, gol, tun, jum, jam, upah);
       
        System.out.printf("\n\n\n");
       
        System.out.println("Nama Pegawai            : "+staf.getNama());
        System.out.println("NIP  Pegawai              : "+staf.getNip());
        System.out.println("Bonus Pegawai            : "+(double)staf.GajiLembur());
        System.out.println("Gaji Bersih  Pegawai    : "+(double)staf.Gaji());
    }
}


Tidak ada komentar:

Posting Komentar