Latihan Kode Program C++: Menghitung Diskon Potongan Harga

Latihan kode program C++ kali ini akan membahas cara membuat dan menghitung diskon potongan harga.

Soal ini umumnya 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.750000

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

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.99999

Total bayar: Rp.99999

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 C++. Terakhir, butuh sedikit operasi aritmatika untuk menghitung diskon serta total jumlah akhir yang harus dibayar.

Berikut tutorial pendahuluan yang bisa diikuti:


Kode Program C++ Menghitung Diskon Potongan Harga

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

#include <iostream>

using namespace std;

int main()
{
  cout << "##  Program C++ Diskon Potongan Harga  ##" << endl;
  cout << "=========================================" << endl;
  cout << endl;

  int total_belanja, harga_akhir;

  cout << "Total Belanja: Rp.";
  cin >> total_belanja;
  cout << endl;

  if ((total_belanja >= 100000) && (total_belanja < 500000)) {
    harga_akhir = total_belanja - (0.1*total_belanja);
    cout << "Selamat, anda mendapat diskon 10%" << endl;
  }
  else if ((total_belanja >= 500000) && (total_belanja < 1000000)) {
    harga_akhir = total_belanja - (0.2*total_belanja);
    cout << "Selamat, anda mendapat diskon 20%" << endl;
  }
  else if (total_belanja >= 1000000) {
    harga_akhir = total_belanja - (0.3*total_belanja);
    cout << "Selamat, anda mendapat diskon 30%" << endl;
  } 
  else {
    harga_akhir = total_belanja;
  }

  cout << "Total bayar: Rp." << harga_akhir << endl;

  return 0;
}

Latihan Kode Program C++ Menghitung Diskon Potongan Harga

Di baris 11 terdapat perintah untuk deklarasi 2 variabel integer, yakni total_belanja dan harga_akhir.

Variabel total_belanja dipakai untuk menampung nilai input total belanja user. Ini diperoleh dari perintah cin >> total_belanja di baris 14.

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

Sebagai contoh, kondisi if di baris 17 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 21, 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 25, 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 29-31 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 33.


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

Add Comment