Skip to main content

Program Login dan Manajemen Toko Donat dalam C dan C++

 

Pendahuluan

Program login dan manajemen toko donat adalah sistem yang memungkinkan pengguna untuk melakukan autentikasi login sebelum mengelola daftar pembelian donat dengan berbagai pilihan rasa.

Dalam artikel ini, kita akan membuat program dalam C dan C++ yang memiliki fitur utama:

  1. Login pengguna untuk memastikan hanya admin yang bisa mengakses sistem.

  2. Manajemen toko donat dengan 20 pilihan rasa dan harga yang berbeda.

  3. Menghitung total pembelian pelanggan berdasarkan jumlah donat yang dipilih.


Konsep Program Login dan Manajemen Toko Donat

  1. Login pengguna

    • Pengguna memasukkan username dan password.

    • Jika valid, akses diberikan. Jika tidak, akses ditolak.

  2. Input daftar belanja pelanggan

    • Pengguna memasukkan nama pelanggan dan memilih jenis donat.

    • Program mencatat jumlah dan harga setiap donat yang dibeli.

    • Program menghitung total pembayaran pelanggan.

  3. Menampilkan rincian transaksi

    • Nama pelanggan, daftar donat, dan total harga ditampilkan.


Program dalam Bahasa C

Berikut adalah implementasi program dalam bahasa C:

#include <stdio.h>
#include <string.h>

#define USER "admin"
#define PASS "12345"

// Daftar donat
char *donat[20] = {
    "Coklat", "Vanila", "Strawberry", "Matcha", "Tiramisu",
    "Blueberry", "Kopi", "Keju", "Pandan", "Madu",
    "Karamel", "Oreo", "Mocca", "Kacang", "Kelapa",
    "Durian", "Mangga", "Apel", "Anggur", "Lemon"
};
int harga[20] = {8000, 7500, 8500, 9000, 9500, 8700, 8900, 8200, 8800, 9300,
                 9200, 9100, 8600, 8300, 8700, 9100, 9200, 8800, 8900, 9400};

int login() {
    char username[20], password[20];
    printf("Masukkan username: ");
    scanf("%s", username);
    printf("Masukkan password: ");
    scanf("%s", password);
    
    if (strcmp(username, USER) == 0 && strcmp(password, PASS) == 0) {
        printf("Login berhasil!\n");
        return 1;
    } else {
        printf("Login gagal!\n");
        return 0;
    }
}

void toko_donat() {
    char nama[30];
    int pilihan, jumlah;
    float total = 0;
    
    printf("\nMasukkan nama pelanggan: ");
    scanf("%s", nama);
    
    printf("\nDaftar Donat:\n");
    for (int i = 0; i < 20; i++) {
        printf("%d. %s - Rp%d\n", i + 1, donat[i], harga[i]);
    }
    
    while (1) {
        printf("Masukkan pilihan (0 untuk selesai): ");
        scanf("%d", &pilihan);
        if (pilihan == 0) break;
        
        printf("Masukkan jumlah: ");
        scanf("%d", &jumlah);
        
        if (pilihan >= 1 && pilihan <= 20) {
            total += harga[pilihan - 1] * jumlah;
        } else {
            printf("Pilihan tidak valid!\n");
        }
    }
    
    printf("\nRincian Transaksi:\n");
    printf("Pelanggan: %s\n", nama);
    printf("Total Pembayaran: Rp%.2f\n", total);
}

int main() {
    if (login()) {
        toko_donat();
    }
    return 0;
}

Program dalam Bahasa C++

Berikut adalah implementasi program dalam bahasa C++:

#include <iostream>
using namespace std;

string USER = "admin";
string PASS = "12345";

string donat[20] = {
    "Coklat", "Vanila", "Strawberry", "Matcha", "Tiramisu",
    "Blueberry", "Kopi", "Keju", "Pandan", "Madu",
    "Karamel", "Oreo", "Mocca", "Kacang", "Kelapa",
    "Durian", "Mangga", "Apel", "Anggur", "Lemon"
};
int harga[20] = {8000, 7500, 8500, 9000, 9500, 8700, 8900, 8200, 8800, 9300,
                 9200, 9100, 8600, 8300, 8700, 9100, 9200, 8800, 8900, 9400};

bool login() {
    string username, password;
    cout << "Masukkan username: ";
    cin >> username;
    cout << "Masukkan password: ";
    cin >> password;
    
    if (username == USER && password == PASS) {
        cout << "Login berhasil!\n";
        return true;
    } else {
        cout << "Login gagal!\n";
        return false;
    }
}

void toko_donat() {
    string nama;
    int pilihan, jumlah;
    float total = 0;
    
    cout << "\nMasukkan nama pelanggan: ";
    cin >> nama;
    
    cout << "\nDaftar Donat:\n";
    for (int i = 0; i < 20; i++) {
        cout << i + 1 << ". " << donat[i] << " - Rp" << harga[i] << "\n";
    }
    
    while (true) {
        cout << "Masukkan pilihan (0 untuk selesai): ";
        cin >> pilihan;
        if (pilihan == 0) break;
        
        cout << "Masukkan jumlah: ";
        cin >> jumlah;
        
        if (pilihan >= 1 && pilihan <= 20) {
            total += harga[pilihan - 1] * jumlah;
        } else {
            cout << "Pilihan tidak valid!\n";
        }
    }
    
    cout << "\nRincian Transaksi:\n";
    cout << "Pelanggan: " << nama << "\n";
    cout << "Total Pembayaran: Rp" << total << "\n";
}

int main() {
    if (login()) {
        toko_donat();
    }
    return 0;
}


Kesimpulan

  • Program ini memiliki fitur login dan manajemen toko donat dengan 20 rasa.

  • Hanya pengguna dengan akses valid yang bisa mengelola transaksi.

  • Menghitung total pembelian pelanggan secara otomatis.

  • Cocok sebagai latihan bagi pemula dalam C dan C++.

Semoga bermanfaat! 🚀

Comments

Popular posts from this blog

Membuat Segitiga dengan "*" dalam Bahasa C/C++

 Dalam pemrograman, mencetak pola seperti segitiga menggunakan karakter * adalah latihan dasar yang sering digunakan untuk memahami konsep perulangan ( loop ). Pada artikel ini, kita akan belajar cara membuat segitiga menggunakan bahasa pemrograman C/C++. Konsep Dasar Kita akan menggunakan perulangan bersarang ( nested loop ) untuk mencetak segitiga. Struktur dasarnya terdiri dari: Loop luar : Mengatur jumlah baris segitiga. Loop dalam pertama : Mencetak spasi untuk merapikan segitiga. Loop dalam kedua : Mencetak karakter * membentuk segitiga. Kode Program dalam C Berikut adalah kode lengkap dalam bahasa C: #include <stdio.h> int main() { int i, j, tinggi; // Meminta pengguna memasukkan tinggi segitiga printf("Masukkan tinggi segitiga: "); scanf("%d", &tinggi); // Loop untuk baris for (i = 1; i <= tinggi; i++) { // Loop untuk mencetak spasi (agar segitiga rata tengah) for (j = 1; j <= tinggi - i; ...

Macam-Macam Header C++ ( Borland C++ ) dan Fungsinya

Macam-Macam File Header pada C++ Dan Fungsinya --Sebelum melangkah lebih jauh  untuk lebih mendalamai bahasa pemrograman C++,alangkah baiknya kita mengenal terlebih dahulu beberapa bagian dalam bahasa C++,salah satunya adalah file header.File Header merupakan sebuah file yang berisi deklarasi untuk berbagai fungsi yang dibutuhkan oleh program baik itu sebagai standar Input/Output maupun sebagai syntax. File Header dalam bahasa pemrograman C++ digunakan untuk memanggil library-library yang ada sehingga suatu fungsi dapat digunakan secara baik dan benar. #Include digunakan untuk mendeklarasikan file header dalam C++, Berikut macam-macam file header dalam bahasa pemrograman C++: 1.#Include<Iostream.h> Digunakan untuk menampilkan perintah: - Cin Merupakan fungsi masukan(digunakan untuk menyimpan data dalam suatu variabel). Bentuk umum: cin>>var x; - Cout Merupakan fungsi keluaran(digunakan untuk menampilkan data ataupun tulisan). Bentuk...

Contoh program Heap Sort untuk C++ || Borland C++

     Sesuai dengan judulnya kali ini saya akan membagikan contoh program Heap Sort untuk C++ atau Borland C++, langsung saja kalian download filenya dibawah ini : DOWNLOAD #include <stdio.h> #include <limits.h> #include <conio.h> int heap[1000000],UkuranHeap; void Init() {     UkuranHeap = 0;     heap[0] = -INT_MAX; } void Insert(int element) {     UkuranHeap++;     heap[UkuranHeap] = element; /*Sisipkan di tempat terakhir*/     /*Sesuaikan posisinya*/     int now = UkuranHeap;     while(heap[now/2] > element)     {             heap[now] = heap[now/2];             now /= 2;     }     heap[now] = element; } int DeleteMin() {     int minEl...