Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * @(#)Perusahaan.java
- *
- * Perusahaan application
- *
- * @author
- * @version 1.00 2017/10/12
- */
- /*
- Class Main
- */
- import java.util.Scanner;
- public class Perusahaan {
- public static void main(String[] args) {
- PekerjaTetap tetap = new PekerjaTetap();
- PekerjaKontrak kontrak = new PekerjaKontrak();
- Manager manager = new Manager();
- Scanner cetak = new Scanner(System.in);
- String status;
- char ulang;
- do{
- System.out.print("\n\nMasukan Status anda (tetap/kontrak/manager) = ");
- status = cetak.next();
- if (status.compareTo("tetap")==0){
- tetap.pekerjaTetap();
- }
- else if (status.compareTo("kontrak")==0){
- kontrak.pekerjaKontrak();
- }
- else if(status.compareTo("manager")==0){
- manager.Manager();
- }
- System.out.print("Apakah anda ingin mengulang = (y/t)");
- ulang = cetak.next().charAt(0);
- }while(ulang == 'y');
- }
- }
- /*
- Class Pekerja
- */
- import java.io.*;
- import java.util.Scanner;
- import java.text.DecimalFormat;
- import java.text.DecimalFormatSymbols;
- class PekerjaTetap {
- public float gajiPekerjaTetap = 5000000;
- double potongan = 0.1;
- double gajiManager = 10000000;
- double gajiKontrak = 150000;
- int jumlahAnak, bulan, absen;
- double anak1 = 750000, anak2 = 1250000;
- double totalKontrak, jamKerja;
- double tunjangan, total;
- public void pekerjaTetap(){
- Scanner cetak = new Scanner(System.in);
- KonversiRupiah konversi = new KonversiRupiah();
- System.out.print("Anda Absen berapa kali dalam 1 bulan = ");
- absen = cetak.nextInt();
- System.out.print("Anda Mempunyai berapa anak = ");
- jumlahAnak = cetak.nextInt();
- if (jumlahAnak > 0 && jumlahAnak <= 1){
- tunjangan += anak1;
- }
- else if(jumlahAnak >= 2){
- tunjangan += anak2;
- }
- if(absen >= 3){
- total = (gajiPekerjaTetap + tunjangan ) - potongan;
- }
- else if(absen < 3 && absen >= 0){
- total = gajiPekerjaTetap + tunjangan;
- }
- konversi.konversiRupiah(total);
- }
- }
- class PekerjaKontrak extends PekerjaTetap{
- PekerjaTetap kontrak = new PekerjaTetap();
- KonversiRupiah konversi = new KonversiRupiah();
- public void pekerjaKontrak(){
- Scanner cetak = new Scanner(System.in);
- System.out.print("Anda kerja berapa jam perhari = ");
- kontrak.jamKerja = cetak.nextFloat();
- kontrak.totalKontrak = kontrak.jamKerja * 150000;
- kontrak.totalKontrak *= 20;
- konversi.konversiRupiah(kontrak.totalKontrak);
- }
- }
- class Manager extends PekerjaTetap{
- PekerjaTetap manager = new PekerjaTetap();
- public void Manager(){
- Scanner cetak = new Scanner(System.in);
- KonversiRupiah konversi = new KonversiRupiah();
- System.out.print("Anda Absen berapa kali dalam 1 bulan = ");
- manager.absen = cetak.nextInt();
- System.out.print("Anda Mempunyai berapa anak = ");
- manager.jumlahAnak = cetak.nextInt();
- if (manager.jumlahAnak > 0 && manager.jumlahAnak <= 1){
- manager.tunjangan += manager.anak1;
- }
- else if(manager.jumlahAnak >= 2){
- manager.tunjangan += manager.anak2;
- }
- if(manager.absen >= 3){
- manager.total = (manager.gajiManager + manager.tunjangan ) - manager.potongan;
- }
- else if(manager.absen < 3 && manager.absen >= 0){
- System.out.print(manager.tunjangan);
- manager.total = manager.gajiManager + manager.tunjangan;
- }
- konversi.konversiRupiah(manager.total);
- }
- }
- class KonversiRupiah {
- double konversiRupiah(double harga){
- DecimalFormat kursIndonesia = (DecimalFormat) DecimalFormat.getCurrencyInstance();
- DecimalFormatSymbols formatRp = new DecimalFormatSymbols();
- formatRp.setCurrencySymbol("Rp. ");
- formatRp.setMonetaryDecimalSeparator(',');
- formatRp.setGroupingSeparator('.');
- kursIndonesia.setDecimalFormatSymbols(formatRp);
- System.out.printf("Total Gaji nya adalah : %s %n", kursIndonesia.format(harga));
- return harga;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment