Algoritma 11.1

Run Settings
LanguageC++
Language Version
Run Command
#include <iostream> #include <stdio.h> using namespace std; void garis() { printf("-------------------------------------------------\n"); } //deklarasi fungsi // return value tanpa parameter float getPPN(); // return value dengan parameter float hitungSubtotal(int harga, int jumlah); // tidak return value tanpa parameter void tampilKetentuan(); // tidak return value dengan parameter void tampilOutput(string judul, int harga, int jumlah, float subtotal, float diskon, float ppn, float total, string bonus); int main() { int kode, jumlah, harga = 0; string judul, bonus = "-"; tampilKetentuan(); garis(); cout << "Masukan kode buku [1/2/3]: \n"; scanf("%d", &kode); cout << "Jumlah pembelian buku : \n"; scanf("%d", &jumlah); // Switch case switch (kode) { case 1: judul = "Sukses Belajar C++"; harga = 50000; break; case 2: judul = "Kunci Pribadi Yang Sukses"; harga = 35000; break; case 3: judul = "Mencari Mutiara Di Dasar Hati"; harga = 45000; break; default: puts("Kode buku tidak valid!"); return 0; } float subtotal = hitungSubtotal(harga, jumlah); // IF float diskon = 0; if (jumlah > 5) { diskon = subtotal * 0.10; // diskon 10% bonus = "Kotak Pensil"; } float ppn = getPPN() * subtotal; // PPN 10% float total = subtotal - diskon + ppn; tampilOutput(judul, harga, jumlah, subtotal, diskon, ppn, total, bonus); return 0; } // implementasi fungsi // Tidak return value & tanpa parameter void tampilKetentuan() { garis(); puts("Toko Buku Almara"); puts("Jatiasih - Bekasi"); garis(); puts("KETENTUAN"); garis(); puts("| Kode | Judul Buku | Harga |"); garis(); puts("| 1 | 1000 Mindset Berpikir Positif | 50000 |"); puts("| 2 | berani tidak disukai | 35000 |"); puts("| 3 | indistractable | 45000 |"); garis(); puts("Subtotal = Harga x Jumlah Beli"); puts("PPN = 10% x Subtotal"); puts("Jika jumlah beli > 5 mendapat diskon 10% dan bonus kotak pensil"); puts("---------------------------------------------------------------"); } // Return value tanpa parameter float getPPN() { return 0.10; } // Return value dengan parameter float hitungSubtotal(int harga, int jumlah) { return harga * jumlah; } // Tidak return value & dengan parameter void tampilOutput(string judul, int harga, int jumlah, float subtotal, float diskon, float ppn, float total, string bonus) { garis(); cout << "Nama Buku : " << judul << endl; cout << "Harga : " << harga << endl; cout << "Bonus : " << bonus << endl; printf("Subtotal : Rp %.2f\n", subtotal); printf("Potongan : Rp %.2f\n", diskon); printf("PPN : Rp %.2f\n", ppn); printf("Total : Rp %.2f\n", total); garis(); puts("\t\t Terima Kasih"); garis(); puts("Nama : la ode ian"); puts("Email : laodeian21@gmail.com"); } /* #include <iostream> #include <string> using namespace std; //metode kedua void garis() { printf("---------------------------------------------------\n"); } // Fungsi NOT Return Value (Tanpa Parameter) void tampilkanKetentuan() { garis(); //Fungsi Printf printf("Toko Buku Almara\n"); cout << "Jatiasih - Bekasi\n"; garis(); cout << "KETENTUAN\n"; garis(); cout << "| Kode | Judul | Harga |\n"; garis(); cout << "| 1 | Sukses Belajar C++ | 50.000 |\n"; cout << "| 2 | Kunci Pribadi Yang Sukses | 35.000 |\n"; cout << "| 3 | Mencari Mutiara Di Dasar Hati | 45.000 |\n"; garis(); cout << "Subtotal = Harga x Jumlah Beli\n"; cout << "PPN = 10% x Subtotal\n"; cout << "Jika jumlah beli lebih dari 5 maka mendapat discount 10% dan bonus kotak pensil.\n"; garis(); } // Fungsi Return Value (Dengan Parameter) int hitungSubtotal(int harga, int jumlah) { return harga * jumlah; } // Fungsi Return Value (Tanpa Parameter) int hitungPPN(int subtotal) { return subtotal * 0.10; } // Fungsi NOT Return Value (Dengan Parameter) void tampilkanHasil(string namaBuku, int harga, string bonus, int subtotal, int potongan, int ppn, int total) { //Fungsi Cout cout << "Nama Buku : " << namaBuku << endl; cout << "Harga Buku : " << harga << endl; cout << "Bonus : " << bonus << endl; cout << "Subtotal : Rp. " << subtotal << ".00" << endl; cout << "Potongan : Rp. " << potongan << ".00" << endl; cout << "PPN : Rp. " << ppn << ".00" << endl; cout << "Total : Rp. " << total << ".00" << endl; garis(); cout << "Terima Kasih\n"; garis(); cout << "Nama : la ode ian\n"; cout << "Email : laodeian21@gmail.com\n"; } int main() { tampilkanKetentuan(); // Deklarasi variabel int kode, jumlah; string namaBuku, bonus = "-"; int harga = 0, subtotal, potongan = 0, ppn, total; // Input kode dan jumlah cout << "Masukkan kode buku [1/2/3]: "<<endl; //Fungsi Cin cin >> kode; cout << "Jumlah pembelian buku: "<<endl; cin >> jumlah; garis(); // Struktur Switch Case switch (kode) { case 1: namaBuku = "Sukses Belajar C++"; harga = 50000; break; case 2: namaBuku = "Kunci Pribadi Yang Sukses"; harga = 35000; break; case 3: namaBuku = "Mencari Mutiara Di Dasar Hati"; harga = 45000; break; default: cout << "Kode buku tidak valid!\n"; return 0; } // Hitung subtotal subtotal = hitungSubtotal(harga, jumlah); // Cek jumlah untuk potongan dan bonus if (jumlah > 5) { potongan = subtotal * 0.10; // 10% diskon bonus = "Kotak Pensil"; } // Hitung PPN dan total ppn = hitungPPN(subtotal); total = subtotal - potongan + ppn; // Tampilkan hasil tampilkanHasil(namaBuku, harga, bonus, subtotal, potongan, ppn, total); return 0; } */
Editor Settings
Theme
Key bindings
Full width
Lines