Latihan Kode Program Bahasa C: Membuat Menu Berulang

Latihan kode program bahasa C kali ini akan membahas cara membuat menu berulang. Menu seperti ini umum dijumpai pada program C yang cukup besar, dimana user bisa memilih menu yang ada dan bisa mengulangi pilihan sampai user memutuskan exit.

Soal ini dipakai untuk menguji pemahaman seputar konsep switch case, if else serta perulangan do while.


Soal Membuat Menu Berulang

Buatlah sebuah kode program dalam bahasa C yang akan menampilkan menu berikut:

##  Daftar Menu Kopi Ilkom  ##
==============================
1. Espresso
2. Cappuccino
3. Moccacino
4. Vanilla Latte
5. Hazelnut Latte

Pilihan anda:

Disini terdapat 5 pilihan menu kopi. Lalu kode program akan berhenti menunggu user memilih salah satu menu. Jika diinput angka 2, maka hasilnya menjadi:

Pilihan anda: 2
Anda memilih Cappuccino

Ingin memilih menu lain (y/t)?

Karena memilih angka 2, maka akan tampil teks "Anda memilih Cappuccino". Sampai disini program tidak berhenti, tapi tampil pertanyaan kedua apakah user masih ingin memilih menu lain atau keluar (program selesai).

Jika user menginput huruf "y", maka akan tampil kembali menu awal:

##  Daftar Menu Kopi Ilkom  ##
==============================
1. Espresso
2. Cappuccino
3. Moccacino
4. Vanilla Latte
5. Hazelnut Latte

Pilihan anda:

Jika user menginput angka 4, maka hasilnya adalah:

Pilihan anda: 4
Anda memilih Vanilla Latte

Ingin memilih menu lain (y/t)?

Sampai disini, menu akan terus berulang hingga user mengetik karakter "t". Jika ini yang terjadi, hasilnya adalah:

Ingin memilih menu lain (y/t)? t

Terimakasih...

Dan program selesai.


Tips Membuat Menu Berulang

Soal ini melatih pemahaman tentang cara penggunaan variabel, proses input output, penggunaan kondisi if else atau switch case, serta perulangan do while.

Berikut tutorial pendahuluan yang bisa diikuti:

Kemampuan mengolah logika juga diperlukan. Misalnya jika user menginput angka di luar pilihan 1 – 5, maka tampilkan pesan bahwa nilai input tidak valid.

Silahkan anda coba sebentar untuk membuat kode program ini.


Kode Program C Membuat Menu Berulang

Berikut salah satu solusi dari soal membuat menu berulang menggunakan bahasa C:

#include <stdio.h>

int main(void)
{
  int pilihan;
  char ulang;
  do
  {
    printf("##  Daftar Menu Kopi Ilkom  ## \n");
    printf("============================== \n");
    printf("1. Espresso \n");
    printf("2. Cappuccino \n");
    printf("3. Moccacino \n");
    printf("4. Vanilla Latte \n");
    printf("5. Hazelnut Latte \n\n");

    printf("Pilihan anda: ");
    scanf("%i",&pilihan);

    switch(pilihan){
    case 1:
        printf("Anda memilih Espresso \n");
        break;
    case 2:
        printf("Anda memilih Cappuccino \n");
        break;
    case 3:
        printf("Anda memilih Moccacino \n");
        break;
    case 4:
        printf("Anda memilih Vanilla Latte \n");
        break;
    case 5:
        printf("Anda memilih Hazelnut Latte \n");
        break;
    default:
        printf("Menu tidak tersedia \n");
    }
    printf("\n");

    printf("Ingin memilih menu lain (y/t)? ");
    scanf(" %c",&ulang);
    printf("\n");
  }
  while (ulang!= 't');

  printf("Terimakasih... \n");

  return 0;
}

Latihan Kode Program Bahasa C - Membuat Menu Berulang

Di awal kode program pada baris 5 dan 6 saya mendeklarasikan dua variabel, yakni pilihan dan ulang. Variabel pilihan nantinya akan menampung angka pilihan menu yang diinput user. Sedangkan variabel ulang menampung karakter yang akan dipakai untuk mengulang menu.

Selanjutnya di baris 7 – 8 terdapat perintah do {. Ini adalah tanda bahwa kita masuk ke sebuah perulangan do while. Hampir semua kode program berada dalam perulangan ini, yang ditutup pada baris 45.

Kondisi akhir perulangan adalah (ulang!= 't'), yang artinya jika variabel ulang tidak d iinput karakter 't', maka perulangan do while akan terus di proses.

Pada awal perulangan di baris 9 – 15 terdapat beberapa perintah printf untuk menampilkan daftar menu. Kemudian user diminta memilih salah satu angka menu yang dibaca oleh perintah scanf di baris 18.

Pilihan user ini di tampung ke dalam variabel pilihan untuk kemudian masuk ke pemeriksaan kondisi switch case di baris 20 – 38. Untuk setiap pilihan menu, jalankan perintah printf sesuai yang ada pada block case. Kondisi default di baris 36 akan di eksekusi jika user menginput angka di luar 1 – 5.

Lalu terdapat perintah scanf kedua di baris 42. Inilah proses input yang dipakai menentukan apakah menu kembali tampil atau tidak. Perintah scanf ini menjadi kunci agar perulangan do while bisa berakhir.


Demikian kode program latihan Membuat Menu Berulang dalam Bahasa C. Soal seperti ini biasanya akan digabung lagi dengan pilihan menu yang lebih kompleks.

Sebagai contoh lain, silahkan buat menu berulang menghitung untuk luas bangun datar:

  1. Luas Persegi
  2. Luas Segitiga
  3. Luas Lingkaran

Jika dipilih Luas Segitiga, maka user bisa menginput tinggi dan alas segitiga, lalu menampilkan hasilnya. Kode yang diperlukan memang akan kompleks, tapi bisa jadi ajang latihan algoritma yang lebih menantang lagi.

Demikian, semoga bisa bermanfaat.

Add Comment