TUGAS KELOMPOK MEMBUAT PROGRAM SWITCH CASE

 

Pendahuluan

Pada tugas kelompok ini, kami membuat sebuah program menu interaktif menggunakan bahasa pemrograman C dengan memanfaatkan struktur switch-case. Program ini berfungsi sebagai contoh aplikasi yang menampilkan berbagai fitur seperti cek kelayakan penerima, pembagian daftar, tampilan menu, serta informasi jadwal berdasarkan input pengguna. Penggunaan struktur switch-case dalam program ini bertujuan untuk mengatur alur program secara sistematis sehingga setiap pilihan menu dapat dieksekusi sesuai dengan input yang diberikan. Metode ini juga membantu dalam memahami konsep dasar pemrograman seperti percabangan, perulangan, dan array sebagai bagian dari logika program yang runtut dan efisien.





Tujuan


Tujuan pembuatan program ini antara lain:

  1. Mengimplementasikan struktur switch-case untuk mengatur pemilihan menu dalam program.

  2. Menampilkan daftar pilihan menu dan menerima input dari pengguna.

  3. Menggunakan konsep logika pemrograman seperti kondisi (if-else), perulangan (for), dan array dalam konteks yang mudah dipahami.

  4. Melatih keterampilan dalam menulis dan memahami kode program berbasis bahasa C.

  5. Memberikan pengalaman praktis dalam membuat aplikasi sederhana yang interaktif dan terstruktur.






Code Program (Switch Case)












                     


Code

#include <stdio.h>

int main() {
    int pilihan;

    printf("=== PROGRAM MBG (Makan Bergizi Gratis) ===\n");
    printf("1. Cek Kelayakan Penerima MBG\n");
    printf("2. Data Pembagian MBG\n");
    printf("3. Menu Makan Bergizi Gratis\n");
    printf("4. Jadwal MBG Berdasarkan Hari\n");
    printf("Pilih menu (1-4): ");
    scanf("%d", &pilihan);

    switch (pilihan) {

        case 1: {
            // KONDISI KELAYAKAN
            int usia;
            printf("\nMasukkan usia penerima: ");
            scanf("%d", &usia);

            if (usia >= 6 && usia <= 18) {
                printf("Status: BERHAK menerima MBG\n");
            } else {
                printf("Status: TIDAK BERHAK menerima MBG\n");
            }
            if (usia >= 6 && usia <= 18)
            printf("TerimaKasih pak Prabowo");
            break;
        }

        case 2: {
            // PERULANGAN PEMBAGIAN
            int i, jumlah;
            printf("\nMasukkan jumlah penerima MBG hari ini: ");
            scanf("%d", &jumlah);

            printf("Daftar pembagian MBG:\n");
            for (i = 1; i <= jumlah; i++) {
                printf("Kelas 2KA2%d menerima MBG\n", i);
            }
            printf("TerimaKasih Pak Prabowo");
            break;
        }

        case 3: {
            // ARRAY MENU
            char *menuMBG[] = {
                "Nasi",
                "Ayam",
                "Sayur",
                "Buah",
                "Susu"
            };

            int i;
            printf("\nMenu Makan Bergizi Gratis:\n");
            for (i = 0; i < 5; i++) {
                printf("- %s\n", menuMBG[i]);
            }
            printf("TerimaKasih Pak Prabowo");
            break;
        }

        case 4: {
            // KONDISI HARI
            int hari;
            printf("\nMasukkan nomor hari (1-7): ");
            printf("\n1 = Senin\n2 = Selasa\n3 = Rabu\n4 = Kamis\n5 = Jumat\n6 = Sabtu\n7=Minggu\n");
            scanf("%d", &hari);

            if (hari >= 1 && hari <= 5) {
                printf("Hari sekolah: MBG DIBAGIKAN\n");
            } else if (hari == 6 || hari == 7) {
                printf("Hari libur: MBG TIDAK dibagikan\n");
            } else {
                printf("Input hari tidak valid\n");
            }
            if(hari >= 1 && hari <= 5)
            printf("TerimaKasih pak prabowo\n");
            break;
        }

        default:
            printf("\nPilihan menu tidak tersedia!\n");
    }

    return 0;
}


Penjelasan Keseluruhan Program

1. Header dan Fungsi Utama

#include <stdio.h> int main() {
  • #include <stdio.h> → Digunakan untuk fungsi input–output seperti printf() dan scanf().

  • int main() → Fungsi utama program, tempat eksekusi dimulai.




2. Deklarasi Variabel Menu

int pilihan;
  • Variabel pilihan digunakan untuk menyimpan menu yang dipilih pengguna (1–4).




3. Tampilan Menu Program

printf("=== PROGRAM MBG (Makan Bergizi Gratis) ===\n"); printf("1. Cek Kelayakan Penerima MBG\n"); printf("2. Data Pembagian MBG\n"); printf("3. Menu Makan Bergizi Gratis\n"); printf("4. Jadwal MBG Berdasarkan Hari\n"); printf("Pilih menu (1-4): "); scanf("%d", &pilihan);
  • Menampilkan daftar menu MBG.

  • scanf() membaca input angka dari pengguna dan menyimpannya ke variabel pilihan.




4. Percabangan switch

switch (pilihan) {
  • Struktur switch digunakan untuk menjalankan program sesuai menu yang dipilih.





Case 1 – Cek Kelayakan Penerima MBG







Fungsi:
    • Memeriksa apakah seseorang berhak menerima MBG berdasarkan usia.

    • Usia yang berhak: 6–18 tahun.

    Alur:

    1. Program meminta input usia.

    2. Jika usia 6–18 → tampilkan BERHAK menerima MBG.

    3. jika di luar itu → tampilkan TIDAK BERHAK menerima MBG.

    4. Jika berhak, tampilkan pesan TerimaKasih pak Prabowo.


Case 2 – Data Pembagian MBG (Perulangan)





    Fungsi:

    • Menampilkan daftar penerima MBG menggunakan perulangan for.

    Alur:

    1. Program meminta jumlah penerima MBG hari ini.

    2. Menggunakan for untuk menampilkan daftar penerima dari 1 sampai jumlah.

    3. Setiap iterasi menampilkan:

      Kelas 2KA2-x menerima MBG
    4. Menutup dengan pesan TerimaKasih Pak Prabowo.


Case 3 – Menu Makan Bergizi Gratis (Array)





    Fungsi:

    • Menampilkan daftar menu MBG menggunakan array.

    Alur:

    1. Mendeklarasikan array menuMBG berisi 5 menu.

    2. Menggunakan for untuk menampilkan seluruh isi array.

    3. Hasil output berupa daftar menu:

      • Nasi

      • Ayam

      • Sayur

      • Buah

      • Susu

    4. Menutup dengan pesan TerimaKasih Pak Prabowo.


Case 4 – Jadwal MBG Berdasarkan Hari (Kondisi Hari)






    Fungsi:

    • Menentukan apakah MBG dibagikan atau tidak berdasarkan hari.

    Alur:

    1. Program meminta input angka hari (1–7).

    2. Jika hari 1–5 (Senin–Jumat):

      • MBG dibagikan.

    3. Jika hari 6–7 (Sabtu–Minggu):

      • MBG tidak dibagikan.

    4. Jika input di luar 1–7:

      • Tampilkan pesan Input hari tidak valid.

Jika hari sekolah, tampilkan pesan TerimaKasih pak prabowo.

Berikut kesimpulan seluruh program MBG (Makan Bergizi Gratis):


Kesimpulan Program MBG

Program ini merupakan contoh aplikasi sederhana berbasis bahasa C yang menggunakan struktur menu dengan switch–case,

untuk mengelola beberapa fitur terkait program Makan Bergizi Gratis (MBG).

Setiap menu merepresentasikan konsep dasar pemrograman yang berbeda, yaitu kondisi, perulangan, dan array.

Secara keseluruhan, program ini memiliki tujuan untuk:

  1. Mengecek kelayakan penerima MBG (Case 1)
    Program memverifikasi apakah seseorang berhak menerima MBG berdasarkan usia (6–18 tahun).
    Ini menunjukkan penggunaan percabangan if–else dalam pengambilan keputusan.

  2. Menampilkan data pembagian MBG (Case 2)
    Program meminta jumlah penerima MBG dan menampilkannya dalam bentuk daftar menggunakan perulangan for.
    Ini menggambarkan cara kerja loop untuk memproses data berulang.

  3. Menampilkan menu Makan Bergizi Gratis (Case 3)
    Program menggunakan array untuk menyimpan daftar menu makanan dan menampilkannya satu per satu.
    Ini memperlihatkan bagaimana data kolektif dikelola dalam struktur array.

  4. Menentukan jadwal MBG berdasarkan hari (Case 4)
    Program menentukan apakah MBG dibagikan atau tidak berdasarkan hari yang dimasukkan pengguna.
    Ini kembali menekankan penggunaan logika kondisi dalam pemrosesan data.


Inti Kesimpulan

Program MBG ini:

  • Menggabungkan struktur menu (switch–case) dengan berbagai konsep dasar pemrograman C.

  • Mengimplementasikan:

    • Kondisi (if–else)

    • Perulangan (for)

    • Array

  • Bersifat interaktif, karena menerima input dari pengguna.

  • Cocok digunakan sebagai media pembelajaran untuk memahami logika dasar pemrograman C dalam konteks kasus nyata.








ANGGOTA KELOMPOK:


Ardianto Tri Wicaksono (10124181)

Dimas Farel Reivano (10124352)

Muhammad Rizky Pauzan (10124969)

Muhammad Zaidan (10124989)






Komentar