50 likes | 279 Views
Contoh soal penyegaran. Kendali program. Contoh Soal. Buatlah program dengan spec sbb: Pada suatu supermarket, uang yang harus dibayarkan oleh pembeli adalah sejumlah harga barang ditambah dengan PPN dan dikurangi diskon sesuai dengan rumus berikut:
E N D
Contoh soal penyegaran Kendali program
Contoh Soal • Buatlah program dengan spec sbb: • Pada suatu supermarket, uang yang harus dibayarkan oleh pembeli adalah sejumlah harga barang ditambah dengan PPN dan dikurangi diskon sesuai dengan rumus berikut: harga_total = harga + harga*%PPN – harga*%diskon • Besar PPN dan diskon ditentukan oleh kode PPN dan kode diskon barang tsb • Program dibuat untuk membaca harga barang, kode PPN dan kode diskon barang tersebut, program akan terus membaca sampai ditekan karakter tertentu misalnya ‘q’ • Output program berupa jumlah yang harus dibayar
Tabel kelompok PPN dan diskon Tabel kode PPN Tabel kode diskon
Penyelesaian : Desain Program • Input : • harga_barang, tipe:unsigned int • kode_PPN, tipe:char • kode_diskon, tipe:char • karakter_selesai, tipe:char • Output: • Harga_total, tipe:float; • Variabel tambahan: • PPN,diskon, tipe: float;
Algoritma • Inisialisasi: karakter_selesai = 0, harga_total=0 • While karakter_selesai !=‘q’ (jika karakter_selesai =‘q’,ke langkah 3) 2.1. Baca harga_barang, kode_PPN, dan kode_diskon 2.2. Evaluasi kode_PPN (misalnya memakai if) if (kode_PPN == ‘1’) PPN=harga_barang * 0; else if (kode_PPN == ‘2’) PPN=harga_barang * 1%; else if (kode_PPN == ‘3’) PPN=harga_barang * 4%; else if (kode_PPN == ‘4’) PPN=harga_barang * 5%; 2.3. Evaluasi kode_diskon (misal memakai case) switch(kode_diskon) case ‘a’: diskon=harga_barang * 3%; break; case ‘b’: diskon=harga_barang * 5%; break; case ‘c’: diskon=harga_barang * 10%; break; case ‘d’: diskon=harga_barang * 15%; break; 2.4 Update harga_total sementara : harga_total = harga_total + harga_barang + PPN –diskon 2.5 Baca karakter_selesai, kembali ke langkah 2 • Tampilkan harga_total (harga total akhir)