Latihan Kode Program Java: Menghitung Gaji Karyawan

Latihan algoritma kode program Java kali ini akan membahas cara menghitung gaji mingguan karyawan berdasarkan golongan serta kondisi tambahan untuk menghitung upah lembur.

Soal ini umumnya dipakai untuk menguji pemahaman seputar konsep if else atau switch case.


Soal Menghitung Gaji Karyawan

Buatlah program dalam bahasa Java untuk menentukan gaji karyawan mingguan dengan ketentuan sebagai berikut:

  • Golongan = A maka upah per jam 5000
  • Golongan = B maka upah per jam 7000
  • Golongan = C maka upah per jam 8000
  • Golongan = D maka upah per jam 10000

Ketentuan tambahan:

  • Jika jam kerja karyawan lebih dari 48 jam per minggu maka akan mendapat uang lembur dengan perhitungan uang lembur = (jam kerja-48)*4000.
  • Jika jam kerja kurang dari 48 jam maka pegawai tidak akan mendapat uang lembur.
  • Perhitungan gaji pegawai adalah upah + uang lembur.
  • Input berupa nama karyawan, golongan dan jam kerja.
  • Outputnya adalah nama karyawan dan gaji yang diterima.

Tips Membuat Kode Program Menghitung Gaji Karyawan

Soal ini melatih pemahaman tentang cara penggunaan variabel serta cara penggunaan kondisi if else atau switch case. Berikut tutorial pendahuluan yang bisa diikuti:

Karena golongan karyawan hanya berbentuk satu karakter, maka kita bisa menggunakan kondisi switch case untuk menentukan gaji harian. Setelah itu gunakan kondisi if untuk memeriksa apakah karyawan bisa mendapat lembur atau tidak.

Silahkan anda coba sebentar untuk membuat kode program ini.


Kode Program Java Menghitung Gaji Karyawan

Berikut salah satu solusi dari soal menghitung gaji karyawan menggunakan bahasa pemrograman Java:

import java.util.Scanner;
  
class GajiKaryawan {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Menghitung Gaji Karyawan ##");
    System.out.println("============================================");
    System.out.println();
    
    String nama;
    char golongan;
    int jam_kerja = 0, upah_per_jam = 0, total_upah;
    
    System.out.print("Nama Karyawan: ");
    nama = input.nextLine();
    
    System.out.print("Golongan: ");
    golongan = input.next().charAt(0);   
    
    System.out.print("Jumlah jam kerja: ");
    jam_kerja = input.nextInt();    
    
    System.out.println();
    
     // tentukan jumlah upah per jam berdasarkan golongan
    switch (golongan) {
      case 'A':
        upah_per_jam = 5000;
        break;
      case 'B':
        upah_per_jam = 7000;
        break;
      case 'C':
        upah_per_jam = 8000;
        break;
      case 'D':
        upah_per_jam = 10000;
        break;
    }
      
    total_upah = jam_kerja * upah_per_jam;
     
    // cek apakah jam kerja lebih dari 48 jam
    if ( (jam_kerja - 48) > 0 ) {
       total_upah = total_upah + ((jam_kerja - 48)*4000);
    }
    
    // proses output
    System.out.println(nama + " menerima upah Rp." + total_upah 
                       + " per minggu");
  }
}
Agar bisa berjalan, simpan kode diatas ke dalam file GajiKaryawan.java, lalu compile dengan perintah javac GajiKaryawan.java dan jalankan (run) dengan perintah java GajiKaryawan. Panduan lebih lengkap bisa ke Cara Menjalankan kode Program Java (Proses Compile).

Latihan Kode Program Java - Menghitung Gaji Karyawan

Di baris 12 – 14 terdapat kode untuk deklarasi semua variabel yang diperlukan. Lalu proses input data ada pada baris 16 – 23.

Kondisi switch case di baris 28 – 41 berguna untuk menentukan nilai variabel upah_per_jam. Alternatif lain bisa saja menggunakan kondisi if else.

Setelah di dapat upah_per_jam, kita bisa mencari total_upah di baris 43 dengan mengalikan isi variabel jam_kerja * upah_per_jam.

Dalam soal, terdapat kondisi tambahan dimana jika jam kerja lebih dari 48 JAM, maka perlu ditambah dengan upah lembur. Inilah yang dilakukan oleh kode program di baris 46 – 48.

Kondisi if ( (jam_kerja – 48) > 0 ) hanya akan terpenuhi jika jam kerja lebih dari 48 jam. Jika kondisi ini menghasilkan nilai true, maka baris 47 akan diproses dan isi variabel total_upah akan di tambah dengan perhitungan total_upah + ((jam_kerja – 48)*4000).

Namun jika kondisi if ( (jam_kerja – 48) > 0 ) menghasilkan nilai false, tidak perlu perhitungan tambahan.

Terakhir, proses output di lakukan pada baris 51, yakni menampilkan kembali nama karyawan serta jumlah upah per minggu yang disimpan dalam variabel total_upah.


Demikian kode program latihan Menghitung Gaji Karyawan dalam bahasa pemrograman Java. Soal seperti ini cukup sering ditemukan dengan beberapa variasi jumlah gaji.

Add Comment