Tutorial Belajar Pascal Part 40: Struktur Percabangan CASE ELSE dalam Pascal

Dalam tutorial sebelumnya, kita telah membahas cara penulisan struktur percabangan CASE dalam bahasa Pascal. Selain itu, masih terdapat fitur tambahan di dalam CASE, seperti CASE ELSE, menjalankan 1 perintah untuk banyak CASE, maupun menjalankan beberapa perintah dalam 1 kondisi CASE .

Inilah yang akan kita bahas dalam tutorial PASCAL di Duniailkom kali ini, yakni materi lanjutan tentang pembuatan struktur CASE dalam bahasa Pascal.


Membuat Kondisi Default Dengan CASE ELSE

Pada tutorial Struktur Percabangan CASE dalam Pascal kita telah mempelajari konsep dasar penulisan CASE. Dimana saya membuat contoh kode program yang memeriksa nilai variabel bulan, kemudian menampilkan teks dari bulan tersebut. Mari kita masuk ke contoh lain:

program struktur_case;
uses crt;
var
  grade: string;
begin
  clrscr;
  write('Silahkan input grade anda (A-E): ');
  readln(grade);
  
  case (grade) of
     'A' : writeln('Sangat Memuaskan');
     'B' : writeln('Memuaskan');
     'C' : writeln('Kurang Baik');
     'D' : writeln('Kurang Baik');
     'E' : writeln('Maaf, anda tidak lolos');
  end;
  
  readln;
end.

Kali ini saya membuat kode program yang meminta inputan berupa huruf AE, yang disimpan ke dalam variabel grade. Jika diiput 'A', maka akan tampil teks 'Sangat Memuaskan', jika diinput 'B', akan tampil teks 'Memuaskan', demikian hingga grade E.

Contoh Program Pascal - Kondisi Percabangan CASEContoh kali ini kurang lebih sama seperti contoh dalam tutorial sebelumnya. Tapi, bagaimana jika seseorang menginput huruf F? atau X? atau Z? Huruf-huruf ini tidak ada di dalam kondisi yang kita periksa.

Untuk situasi seperti ini kita bisa menggunakan stuktur CASE ELSE. Langsung saja ke dalam contoh kode programnya:

program struktur_case;
uses crt;
var
  grade: string;
begin
  clrscr;
  write('Silahkan input grade anda (A-E): ');
  readln(grade);
  
  case (grade) of
     'A' : writeln('Sangat Memuaskan');
     'B' : writeln('Memuaskan');
     'C' : writeln('Kurang Baik');
     'D' : writeln('Kurang Baik');
     'E' : writeln('Maaf, anda tidak lolos');
  else
    writeln('Maaf, format yang anda masukkan salah');
    writeln('Harap input grade berupa huruf: A, B, C, D, atau E');
  end;
  
  readln;
end.

Perhatikan tambahan bagian ELSE. Artinya, jika kelima kondisi tidak cocok (yang diinput selain dari huruf A – E), maka tampilkan perintah:

writeln('Maaf, format yang anda masukkan salah');
writeln('Harap input grade berupa huruf: A, B, C, D, atau E');

Dengan demikian, jika ada yang iseng menginput huruf lain, akan tampil penjelasan seperti diatas. Jika tidak ditambahkan, kode program kita hanya menampilkan layar kosong (blank).

Contoh Program Pascal - Kondisi Percabangan CASE ELSE


Menjalankan Kode Program Untuk Lebih dari 1 Kondisi CASE

Fitur lain yang tersedia didalam kondisi CASE adalah menjalankan kode program yang sama untuk lebih dari 1 kondisi. Jika anda perhatikan, contoh program grade sebelumnya menampilkan teks 'Kurang Baik' untuk kondisi C dan D. Ini bisa kita satukan menjadi seperti berikut ini:

program struktur_case;
uses crt;
var
  grade: string;
begin
  clrscr;
  write('Silahkan input grade anda (A-E): ');
  readln(grade);
  
  case (grade) of
     'A' : writeln('Sangat Memuaskan');
     'B' : writeln('Memuaskan');
     'C','D' : writeln('Kurang Baik');
     'E' : writeln('Maaf, anda tidak lolos');
  else
    writeln('Maaf, format yang anda masukkan salah');
    writeln('Harap input grade berupa huruf: A, B, C, D, atau E');
  end;
  
  readln;
end.

Dibaris ke 13, saya menulis 'C','D' : writeln('Kurang Baik'). Ini artinya jika variabel grade berisi huruf C atau D, tampilkan teks yang sama: 'Kurang Baik'. Fitur seperti ini bisa digunakan untuk mempersingat penulisan kode program.


Menjalankan Banyak Kode Program untuk 1 Kondisi CASE

Kali ini kita akan membahas kebalikan dari contoh diatas, yakni bagaimana cara menjalankan banyak kode program untuk 1 kondisi CASE. Caranya mirip seperti tutorial IF THEN ELSE, yakni dengan blok begin dan end; untuk setiap kode program kondisi.

Berikut contoh penggunaannya:

program struktur_case;
uses crt;
var
  grade: string;
begin
  clrscr;
  write('Silahkan input grade anda (A-E): ');
  readln(grade);
  
  case (grade) of
    'A' : 
      begin
        writeln('Sangat Memuaskan');
        writeln('Pertahankan!');
      end; 
    'B' : 
      begin
      writeln('Memuaskan');
      writeln('Tingkatkan lagi!');
      end;
    'C','D' : 
      begin
        writeln('Kurang Baik');
        writeln('Agar Lebih banyak belajar!');
      end;
    'E' : 
      begin
        writeln('Maaf, anda tidak lolos');
        writeln('Selama ini ngapain saja bro...?');
      end
  else
    writeln('Maaf, format yang anda masukkan salah');
    writeln('Harap input grade berupa huruf: A, B, C, D, atau E');
  end;
  
  readln;
end.

Kode program diatas merupakan modifikasi dari kode kita sebelumnya. Disini dalam setiap kondisi saya menjalankan 2 baris perintah writeln. Tentu saja tidak dibatasi dengan 2 baris saja, bisa 3, 4 atau lebih. Dengan syarat, harus berada diantara blok begin dan end;.

Contoh Program Pascal - Kondisi Percabangan CASE 2


Batasan dari struktur CASE

Struktur CASE menawarkan penulisan yang lebih singkat dan efisien dibandingkan struktur IF THEN, namun kondisi yang bisa dipakai hanya sederhana seperti yang saya contohkan, misalkan apakah sebuah variabel bernilai angka atau string tertentu.

Untuk kondisi yang lebih rumit seperti perbandingan lebih besar " > " atau lebih kecil " <", atau perbandingan yang melibatkan lebih dari 1 kondisi, kita tidak bisa menggunakan CASE. Kode program untuk menentukan apakah sebuah angka genap atau ganjil, tidak bisa dikonversi ke dalam CASE.

Dalam pemrograman yang "sebenarnya", kita juga lebih sering menggunakan IF daripada CASE. Tapi untuk situasi yang melibatkan banyak perulangan sederhana, struktur CASE lebih rapi dan singkat daripada IF.


Tutorial tentang CASE ELSE kali ini menutup tutorial tentang struktur logika di dalam bahasa pemrograman Pascal. Berikutnya, kita akan masuk ke struktur perulangan atau looping, yang diawali dengan perulangan FOR DO dalam bahasa pascal.


eBook Pascal Uncover Duniailkom
Apabila anda serius ingin mempelajari Pascal dan butuh materi Pascal yang jauh lebih lengkap, Duniailkom telah menerbitkan eBook Pascal Uncover yang membahas bahasa pemrograman Pascal dari dasar hingga procedure, function dan contoh kasus. Penjelasan lebih lanjut bisa ke eBook Pascal Uncover Duniailkom.

19 Comments

  1. Taufik
    15 Oct 16
    • Andre
      16 Oct 16
      • Kara
        21 Jan 21
        • Andre
          21 Jan 21
  2. Dita
    16 Oct 16
  3. Fuadin Latif
    18 Oct 16
    • Andre
      19 Oct 16
  4. Bill Gates
    19 Oct 16
  5. Taufik
    21 Oct 16
  6. M.Rizqi Kamal
    13 Sep 17
    • Andre
      13 Sep 17
  7. M.rizqi Kamal
    15 Sep 17
  8. husin
    14 Jan 19
    • Andre
      15 Jan 19
  9. sifa nur febriani
    13 Dec 19

Add Comment