Latihan Kode Program Java: Menghitung Diskon Potongan Harga

Latihan algoritma kode program Java kali ini akan membahas cara membuat dan menghitung diskon potongan harga.

Soal ini sering dipakai untuk menguji pemahaman seputar konsep variabel, operator perbandingan, dan kondisi if else.


Soal Diskon Potongan Harga

Buatlah program yang meminta data inputan berupa total belanja. Program kemudian menghitung berapa diskon yang bisa diperoleh dengan ketentuan sebagai berikut:

  • Jika total belanja kurang dari Rp. 100.000, tidak mendapat diskon.
  • Jika total belanja antara Rp. 100.000 – Rp. 500.000, mendapat diskon 10%.
  • Jika total belanja antara Rp. 500.000 – Rp. 1.000.000, mendapat diskon 20%.
  • Jika total belanja diatas Rp.1.000.000, mendapat diskon 30%.

Kode program kemudian menampilkan harga yang harus dibayar setelah dikurangi diskon.

Berikut contoh tampilan akhir yang diinginkan (1) :

Total Belanja: Rp.200000

Selamat, anda mendapat diskon 10%
Total bayar: Rp.180000

Berikut contoh tampilan akhir yang diinginkan (2) :

Total Belanja: Rp.950000

Selamat, anda mendapat diskon 20%
Total bayar: Rp.760000

Berikut contoh tampilan akhir yang diinginkan (3) :

Total Belanja: Rp.2999000

Selamat, anda mendapat diskon 30%
Total bayar: Rp.2099300

Berikut contoh tampilan akhir yang diinginkan (4) :

Total Belanja: Rp.70000

Total bayar: Rp.70000

Tips Membuat Kode Program Diskon Potongan Harga

Karena terdapat beberapa kondisi, kode program ini butuh struktur if else. Setiap kondisi punya syarat gabungan, sehingga juga harus paham operator perbandingan dan operator logika di bahasa Java. Terakhir, butuh sedikit operasi aritmatika untuk menghitung diskon serta total jumlah akhir yang harus dibayar.

Berikut tutorial pendahuluan yang bisa diikuti:


Kode Program Java Menghitung Diskon Potongan Harga

Berikut salah satu solusi dari soal menghitung diskon potongan harga menggunakan bahasa pemrograman Java:

import java.util.Scanner;
  
class DiskonHarga {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Diskon Potongan Harga ##");
    System.out.println("========================================");
    System.out.println();
    
    int total_belanja;
    double harga_akhir;
    
    System.out.print("Total Belanja: Rp.");
    total_belanja = input.nextInt();
    System.out.println();
    
    if ((total_belanja >= 100000) && (total_belanja < 500000)) {
      harga_akhir = total_belanja - (0.1*total_belanja);
      System.out.println("Selamat, anda mendapat diskon 10%");
    }
    else if ((total_belanja >= 500000) && (total_belanja < 1000000)) {
      harga_akhir = total_belanja - (0.2*total_belanja);
      System.out.println("Selamat, anda mendapat diskon 20%");
    }
    else if (total_belanja >= 1000000) {
      harga_akhir = total_belanja - (0.3*total_belanja);
      System.out.println("Selamat, anda mendapat diskon 30%");
    } 
    else {
      harga_akhir = total_belanja;
    }
 
  System.out.println("Total bayar: Rp."+ harga_akhir);

  }
}
Agar bisa berjalan, simpan kode diatas ke dalam file DiskonHarga.java, lalu compile dengan perintah javac DiskonHarga.java dan jalankan (run) dengan perintah java DiskonHarga. Panduan lebih lengkap bisa ke Cara Menjalankan kode Program Java (Proses Compile).

Latihan Kode Program Java - Menghitung Diskon Potongan Harga

Di baris 12-13 terdapat perintah untuk deklarasi 2 variabel, yakni total_belanja dan harga_akhir.

Variabel total_belanja dipakai untuk menampung nilai input total belanja user. Ini diperoleh dari perintah total_belanja = input.nextInt() di baris 16.

Selanjutnya terdapat 4 pemeriksaan kondisi if else antara baris 19-33. Urutan pemeriksaan ini boleh bebas sesuai logika setiap programmer, selama memenuhi syarat soal.

Sebagai contoh, kondisi if di baris 19 akan dijalankan jika total belanja sama atau lebih besar dari 100.000, dan kurang dari 500.000. Jika ini bernilai true, maka hitung harga_akhir dengan mengurangkan isi variabel total_belanja – (0.1*total_belanja). Sebagai info tambahan, terdapat perintah cout yang berisi teks "Selamat, anda mendapat diskon 10%".

Untuk kondisi if di baris 23, akan dijalankan jika total belanja sama atau lebih besar dari 500.000, dan kurang dari 1.000.000. Jika ini bernilai true, maka hitung harga_akhir dengan mengurangkan isi variabel total_belanja – (0.2*total_belanja). Sebagai info tambahan, terdapat perintah cout yang berisi teks "Selamat, anda mendapat diskon 20%".

Untuk kondisi if di baris 27, akan dijalankan jika total belanja sama sama atau lebih besar dari 1.000.000. Jika ini bernilai true, maka hitung harga_akhir dengan mengurangkan isi variabel total_belanja – (0.3*total_belanja). Sebagai info tambahan, terdapat perintah cout yang berisi teks "Selamat, anda mendapat diskon 30%".

Terakhir, blok else di baris 31-33 akan dijalankan jika tidak memenuhi ketiga syarat diatas, yakni jika total_belanja kurang dari 100.000. Jika ini bernilai true, harga_akhir akan sama dengan total_belanja karena tidak mendapat diskon.

Total bayar kemudian ditampilkan di baris 35.


Demikian kode program latihan membuat diskon potongan harga dalam bahasa pemrograman Java. Soal seperti ini cukup sering ditemukan dengan beberapa variasi harga diskon dan syarat tambahan.

Add Comment