Program Switch Case


Irfan Farras (10123535)

2KA23 


Pemrograman Switch Case dalam C: Solusi Interaktif untuk Berbagai Pilihan Menu

Pengantar

Switch case adalah salah satu struktur kontrol penting dalam bahasa pemrograman C. Fitur ini memungkinkan kita untuk membuat program yang dapat menjalankan logika berdasarkan pilihan tertentu, membuat kode lebih terstruktur dan mudah dipahami.

Artikel ini membahas secara mendalam implementasi switch case dengan tiga menu pilihan. Setiap menu dirancang untuk memberikan pemahaman tentang berbagai konsep pemrograman, termasuk input data, kondisi, dan perulangan. Program ini sangat cocok untuk pemula yang ingin memperdalam kemampuan pemrograman C.


Tujuan Program

  1. Menu 1: Menghitung luas segitiga (dengan inputan sederhana).
  2. Menu 2: Menentukan kategori nilai (menggunakan kondisi if-else).
  3. Menu 3: Menampilkan bilangan genap hingga batas tertentu (menggunakan perulangan for).
 

Kode Program Lengkap

Berikut adalah kode program yang akan digunakan:


Penjelasan Program :

#include <stdio.h>

Baris ini adalah deklarasi untuk menyertakan pustaka standar input-output (stdio.h) dalam bahasa C. Fungsi-fungsi seperti printf (untuk mencetak ke layar) dan scanf (untuk membaca input dari pengguna) berasal dari pustaka ini.


int main() {

Baris ini adalah deklarasi fungsi utama dalam program C. Setiap program C dimulai dari fungsi main(). Tipe int menunjukkan bahwa fungsi ini akan mengembalikan nilai integer, biasanya nilai 0, untuk menunjukkan eksekusi sukses.


int menu, alas, tinggi, nilai, n;
  • menu: Variabel untuk menyimpan pilihan menu pengguna.
  • alas dan tinggi: Variabel yang digunakan dalam Menu 1 untuk menghitung luas segitiga.
  • nilai: Variabel yang digunakan dalam Menu 2 untuk menentukan kategori nilai.
  • n: Variabel yang digunakan dalam Menu 3 untuk menentukan batas bilangan genap.

printf("Pilih menu berikut:\n"); printf("1. Menghitung luas segitiga\n"); printf("2. Menentukan kategori nilai\n"); printf("3. Menampilkan bilangan genap hingga batas tertentu\n"); printf("===================================\n"); scanf("%d", &menu);
  • printf: Digunakan untuk mencetak daftar menu ke layar agar pengguna dapat memilih.
  • scanf: Membaca input pilihan menu dari pengguna dan menyimpannya di variabel menu.

switch (menu) {

Switch case dimulai di sini. Berdasarkan nilai menu, program akan menjalankan salah satu dari tiga menu atau default jika nilai tidak valid.

Menu 1: Menghitung Luas Segitiga

case 1: { printf("\n[Menu 1: Menghitung Luas Segitiga]\n"); printf("Masukkan alas segitiga (cm): "); scanf("%d", &alas); printf("Masukkan tinggi segitiga (cm): "); scanf("%d", &tinggi); float luas = 0.5 * alas * tinggi; printf("Luas segitiga adalah: %.2f cm²\n", luas); break; }

Penjelasan:

  1. case 1:: Jika pengguna memilih angka 1, program akan masuk ke bagian ini.
  2. printf: Mencetak pesan untuk meminta pengguna memasukkan nilai alas dan tinggi segitiga.
  3. scanf: Membaca input alas dan tinggi dari pengguna.
  4. luas: Variabel lokal untuk menyimpan hasil perhitungan luas segitiga menggunakan rumus: Luas=12×alas×tinggi
  5. break: Mengakhiri eksekusi case 1 dan keluar dari switch.

Menu 2: Menentukan Kategori Nilai


case 2: { printf("\n[Menu 2: Menentukan Kategori Nilai]\n"); printf("Masukkan nilai Anda: "); scanf("%d", &nilai); if (nilai >= 85) { printf("Kategori: Sangat Baik\n"); } else if (nilai >= 70) { printf("Kategori: Baik\n"); } else if (nilai >= 55) { printf("Kategori: Cukup\n"); } else { printf("Kategori: Kurang\n"); } break; }

Penjelasan:

  1. case 2:: Bagian ini dijalankan jika pengguna memilih angka 2.
  2. scanf: Membaca input nilai dari pengguna.
  3. if-else: Menggunakan logika kondisi untuk menentukan kategori nilai berdasarkan aturan:
    • Nilai 85\geq 85: Sangat Baik
    • Nilai 70nilai<8570 \leq \text{nilai} < 85: Baik
    • Nilai 55nilai<7055 \leq \text{nilai} < 70: Cukup
    • Nilai nilai<55\text{nilai} < 55: Kurang
  4. break: Mengakhiri case 2 dan keluar dari switch.


Menu 3: Menampilkan Bilangan Genap


case 3: { printf("\n[Menu 3: Menampilkan Bilangan Genap]\n"); printf("Masukkan batas bilangan genap: "); scanf("%d", &n); printf("Bilangan genap dari 2 hingga %d adalah:\n", n); for (int i = 2; i <= n; i += 2) { printf("%d ", i); } printf("\n"); break; }

Penjelasan:

  1. case 3:: Bagian ini dijalankan jika pengguna memilih angka 3.
  2. scanf: Membaca batas bilangan genap dari pengguna.
  3. for: Perulangan dimulai dari 2 hingga nn, dengan langkah increment 2. Setiap iterasi mencetak bilangan genap.
  4. break: Mengakhiri case 3 dan keluar dari switch.

Default Case

default: printf("\nKode menu yang Anda masukkan salah\n"); break;

Penjelasan:

  • default:: Bagian ini dijalankan jika input menu tidak sesuai dengan pilihan yang tersedia (1, 2, atau 3).
  • Program mencetak pesan kesalahan untuk memberitahukan bahwa kode menu tidak valid.

Akhir Program

return 0; }
  • return 0;: Mengembalikan nilai 0 ke sistem operasi, menunjukkan bahwa program telah selesai dengan sukses.

Berikut adalah contoh input-output untuk setiap menu beserta penjelasan lengkapnya:

Menu 1: Menghitung Luas Segitiga

Input:

Pilih menu berikut: 1. Menghitung luas segitiga 2. Menentukan kategori nilai 3. Menampilkan bilangan genap hingga batas tertentu =================================== 1 [Menu 1: Menghitung Luas Segitiga] Masukkan alas segitiga (cm): 10 Masukkan tinggi segitiga (cm): 5

Output:

Luas segitiga adalah: 25.00 cm²

Penjelasan:

  • Pengguna memilih menu 1.
  • Program meminta input alas (10 cm) dan tinggi (5 cm).
  • Program menghitung luas segitiga menggunakan rumus: Luas=12×alas×tinggi Luas=12×10×5=25.00cm2
  • Hasil dihitung dan ditampilkan.

Menu 2: Menentukan Kategori Nilai

Input:

Pilih menu berikut: 1. Menghitung luas segitiga 2. Menentukan kategori nilai 3. Menampilkan bilangan genap hingga batas tertentu =================================== 2 [Menu 2: Menentukan Kategori Nilai] Masukkan nilai Anda: 78

Output:

Kategori: Baik

Penjelasan:

  • Pengguna memilih menu 2.
  • Program meminta input nilai pengguna, yaitu 78.
  • Logika kondisi digunakan untuk menentukan kategori nilai:
    • Sangat Baik: Nilai ≥ 85
    • Baik: Nilai 70 ≤ nilai 85
    • Cukup: Nilai 55 ≤ nilai 70
    • Kurang: Nilai nilai 55
  • Karena nilai 78 berada di antara 70 dan 85, hasilnya adalah kategori Baik.

Menu 3: Menampilkan Bilangan Genap


Input:
Pilih menu berikut: 1. Menghitung luas segitiga 2. Menentukan kategori nilai 3. Menampilkan bilangan genap hingga batas tertentu =================================== 3 [Menu 3: Menampilkan Bilangan Genap] Masukkan batas bilangan genap: 10

Output:

Bilangan genap dari 2 hingga 10 adalah: 2 4 6 8 10

Penjelasan:

  • Pengguna memilih menu 3.
  • Program meminta input batas bilangan genap, yaitu 10.
  • Program menggunakan perulangan for untuk mencetak bilangan genap mulai dari 2 hingga 10:
    • Iterasi pertama: i=2i = 2, cetak 2.
    • Iterasi kedua: i=4i = 4, cetak 4.
    • Iterasi ketiga: i=6i = 6, cetak 6.
    • Iterasi keempat: i=8i = 8, cetak 8.
    • Iterasi kelima: i=10i = 10, cetak 10.
  • Semua bilangan genap hingga 10 ditampilkan di layar.

Default Case: Input Tidak Valid


Input:
Pilih menu berikut: 1. Menghitung luas segitiga 2. Menentukan kategori nilai 3. Menampilkan bilangan genap hingga batas tertentu =================================== 5

Output:

Kode menu yang Anda masukkan salah

Penjelasan:

  • Pengguna memasukkan 5, yang tidak termasuk dalam pilihan menu (1, 2, atau 3).
  • Program menjalankan default case dan mencetak pesan kesalahan.

Kesimpulan

Program ini menggunakan switch case untuk menyelesaikan tiga tugas berbeda:

  1. Menghitung luas segitiga menggunakan input sederhana.
  2. Menentukan kategori nilai dengan logika kondisi if-else.
  3. Menampilkan bilangan genap menggunakan perulangan for.

Setiap bagian kode memiliki fungsi spesifik, menjadikannya modular dan mudah dipahami. Program ini sangat cocok untuk pemula yang ingin menguasai dasar-dasar pemrograman C.

 

Komentar

Postingan populer dari blog ini

Program Switch Case untuk memilih operasi tertentu berdasarkan input dari pengguna.