Nested Condition

Halo semuanya!!! Setelah pembahasan condition (kondisi) sebelumnya, kali ada istilah Nested Condition. Sebenarnya nested condition merupakan perkembangan dari condition itu sendiri. Nested Condition adalah sebuah kondisi yang terdapat kondisi di dalamnya (kondisi dalam kondisi). Untuk lebih jelasnya akan saya bahas.


Ilustrasi


Nested IF

Nested IF adalah percabangan if dengan struktur yang lebih kompleks, dimana terdapat kondisi if dalam if (IF bersarang). Cara kerjanya adalah jika kondisi if terluar memiliki nilai true (benar), maka program akan mengecek kondisi if di dalamnya.

Berikut ini adalah contoh penggunaan nested IF.

Kasus: Menentukan syarat umur dan KTP untuk memiliki SIM C

Notasi Algoritmik
Judul: Program menentukan syarat umur & KTP untuk memiliki SIM C
Kamus:
umur : integer
punya_KTP : string
Algoritma:
output ("Program menentukan syarat umur & KTP untuk memiliki SIM C")
output ("=========================================================")
output ("Masukkan umur anda: ")
input (umur)                                                                 
if (umur >= 17) then                                     
{
     output (“Umur anda sudah memenuhi syarat untuk memiliki SIM C”)
     output ("Apakah anda sudah memiliki KTP? : ")
     input (punya_KTP)
     if ((punya_KTP=sudah) or (punya_KTP=Sudah) or (punya_KTP=SUDAH)) then
     {
          output (“Anda memenuhi syarat untuk memiliki SIM C”)
     }
     else
     {
          output (“Anda belum memenuhi syarat untuk memiliki SIM C”)
     }
}
else
{
     output (“Umur anda belum memenuhi syarat untuk memiliki SIM C”)
}


Source Code

//Judul: Program menentukan syarat umur dan KTP untuk memiliki SIM C
//Nama: Nikolas Adi Kurniatmaja Sijabat
//Tempat, tanggal: Semarang, 3 Januari 2022

//Kamus
#include <iostream>
using namespace std;
int umur;
string punya_KTP;

//Deskripsi
int main()
{
cout << "Program menentukan syarat umur & KTP untuk memiliki SIM C" << endl;
cout << "=========================================================" << endl;
cout << "Masukkan umur anda: ";
cin >> umur;
    //kondisi 1 (jika umur lebih dari sama dengan 17 tahun)
    if (umur >=17)                                                             
    {
           cout << "Umur anda memenuhi syarat untuk memiliki SIM C" << endl;
           cout << "Apakah anda sudah memiliki KTP? : ";
           cin >> punya_KTP;                   //masukkan jawaban sudah atau belum                                       
           //kondisi 2 (jika sudah punya KTP)
           if ((punya_KTP=="sudah")or(punya_KTP=="Sudah")or(punya_KTP=="SUDAH"))
           {
                  cout << "Anda memenuhi syarat untuk memiliki SIM C" << endl;
           }
           else                                                      
           {
                  cout << "Anda belum memenuhi syarat untuk memiliki SIM C" << endl;
           }
       }
       else                                                          
       {
              cout << "Umur anda belum memenuhi syarat untuk memiliki SIM C" << endl;
       }
return 0;
}


Hasil Run Coding

Jika umur sudah memenuhi syarat dan memiliki KTP



Jika umur sudah memenuhi syarat dan belum memiliki KTP



Jika umur belum memiliki syarat



Nested Switch Case

Nested Switch Case adalah struktur switch case yang kompleks, karena kombinasi dari struktur switch case lainnya dalam program. Konsep percabangan ini yakni terdapat struktur switch case yang berada didalam struktur switch case lainnya.

Berikut ini adalah contoh penggunaan nested switch case.

Kasus: Program pilihan menu Es Krim

Notasi Algoritmik
Judul: Program pilihan menu Es Krim
Kamus:
eskrim ← integer
topping_eskrim1 ← integer
topping_eskrim2 ← integer
topping_eskrim3 ← integer
Algoritma:
output (“============== Program Pilihan Menu Es Krim ==============”)
output (endline)
output (“Berikut ini adalah daftar menu Es Krim yang tersedia”)
output (“1. Soft Ice Cream”)
output (“2. Fluffy Ice Cream”)
output (“3. Mix Cup Ice Cream”)
output (endline)
output (“Pilih salah satu Es Krim yang diinginkan: “)
input eskrim
depend on (eskrim)
{
         case 1 :
         output (“Es Krim yang anda pilih adalah Soft Ice Cream”)
         output (endlne)
         output (“Berikut ini adalah daftar topping Es Krim”)
         output (“0. Tanpa topping”)
         output (“1. Oreo”)
         output (“2. Choco Chips”)
         output (“3. Bubble Gum”)
         output (endline)
         output (“Pilih topping yang diinginkan: “)
         input topping_eskrim1
         depend on (topping_eskrim1)
         {
                 case 0 :
                 output (“Anda memilih Soft Ice Cream tanpa tambahan topping”)
                 case 1 :
                 output (“Anda memilih Soft Ice Cream dengan topping Oreo”)
                 case 2 :
                 output (“Anda memilih Soft Ice Cream dengan topping Choco Chips”)
                 case 3 :
                 output (“Anda memilih Soft Ice Cream dengan topping Bubble Gum”)
                 default:
                 output (“Pilihan topping tidak tersedia”)
         }
         case 2 :
         output (“Es Krim yang anda pilih adalah Fluffy Ice Cream”)
         output (endlne)
         output (“Berikut ini adalah daftar topping Es Krim”)
         output (“0. Tanpa topping”)
         output (“1. Oreo”)
         output (“2. Choco Chips”)
         output (“3. Bubble Gum”)
         output (endline)
         output (“Pilih topping yang diinginkan: “)
         input topping_eskrim2
         depend on (topping_eskrim2)
         {
                 case 0 :
                 output (“Anda memilih Fluffy Ice Cream tanpa tambahan topping”)
                 case 1 :
                 output (“Anda memilih Fluffy Ice Cream dengan topping Oreo”)
                 case 2 :
                 output (“Anda memilih Fluffy Ice Cream dengan topping Choco Chips”)
                 case 3 :
                 output (“Anda memilih Fluffy Ice Cream dengan topping Bubble Gum”)
                 default:
                 output (“Pilihan topping tidak tersedia”)
         }
         case 3 :
         output (“Es Krim yang anda pilih adalah Mix Cup Ice Cream”)
         output (endlne)
         output (“Berikut ini adalah daftar topping Es Krim”)
         output (“0. Tanpa topping”)
         output (“1. Oreo”)
         output (“2. Choco Chips”)
         output (“3. Bubble Gum”)
         output (endline)
         output (“Pilih topping yang diinginkan: “)
         input topping_eskrim3
         depend on (topping_eskrim3)
         {
                 case 0 :
                 output (“Anda memilih Mix Cup Ice Cream tanpa tambahan topping”)
                 case 1 :
                 output (“Anda memilih Mix Cup Ice Cream dengan topping Oreo”)
                 case 2 :
                 output (“Anda memilih Mix Cup Ice Cream dengan topping Choco Chips”)
                 case 3 :
                 output (“Anda memilih Mix Cup Ice Cream dengan topping Bubble Gum”)
                 default:
                 output (“Pilihan topping tidak tersedia”)
         }
         default:
         output (“Varian Es Krim lain tidak tersedia”)
}
output (endline)
output (“Pesanan anda segera diproses”)
output (“==========================================================”)

Source Code

//Judul: Program Pilihan Menu Es Krim
//Nama: Nikolas Adi Kurniatmaja Sijabat
//Tempat, tanggal: Semarang, 3 Januari 2022

//Kamus
#include <iostream>
using namespace std;
int eskrim;
int topping_eskrim1;
int topping_eskrim2;
int topping_eskrim3;

//Deskripsi
int main()
{
    cout << "============== Program Pilihan Menu Es Krim ==============" << endl;
    cout << endl;

    //Daftar menu Es Krim
    cout << "Berikut ini adalah daftar menu Es Krim yang tersedia" << endl;
    cout << "1. Soft Ice Cream" << endl;
    cout << "2. Fluffy Ice Cream" << endl;
    cout << "3. Mix Cup Ice Cream" << endl;
    cout << endl;

    cout << "Pilih salah satu Es Krim yang diinginkan: ";
    cin >> eskrim;  //Pemilihan salah satu Es Krim yang diinginkan
    switch (eskrim)
    {
    case 1 :    //Pemilihan topping Es Krim 1. Soft Ice Cream
        cout << "Es Krim yang anda pilih adalah Soft Ice Cream" << endl;
        cout << endl;
        cout << "Berikut ini adalah daftar topping Es Krim" << endl;
        cout << "0. Tanpa topping" << endl;
        cout << "1. Oreo" << endl;
        cout << "2. Choco Chips" << endl;
        cout << "3. Bubble Gum" << endl;
        cout << endl;
        cout << "Pilih topping yang diinginkan: ";
        cin >> topping_eskrim1;
        switch (topping_eskrim1)
        {
          case 0 :
            cout << "Anda memilih Soft Ice Cream tanpa tambahan topping" << endl;
            break;
          case 1 :
            cout << "Anda memilih Soft Ice Cream dengan topping Oreo" << endl;
            break;
          case 2 :
            cout << "Anda memilih Soft Ice Cream dengan topping Choco Chips" << endl;
            break;
          case 3 :
            cout << "Anda memilih Soft Ice Cream dengan topping Bubble Gum" << endl;
            break;
          default:
            cout << "Pilihan topping tidak tersedia" << endl;
        }
        break;
    case 2 :    //Pemilihan topping Es Krim 2. Fluffy Ice Cream
        cout << "Es Krim yang anda pilih adalah Fluffy Ice Cream" << endl;
        cout << endl;
        cout << "Berikut ini adalah daftar topping Es Krim" << endl;
        cout << "0. Tanpa topping" << endl;
        cout << "1. Oreo" << endl;
        cout << "2. Choco Chips" << endl;
        cout << "3. Bubble Gum" << endl;
        cout << endl;
        cout << "Pilih topping yang diinginkan: ";
        cin >> topping_eskrim2;
        switch (topping_eskrim2)
        {
          case 0 :
            cout << "Anda memilih Fluffy Ice Cream tanpa tambahan topping" << endl;
            break;
          case 1 :
            cout << "Anda memilih Fluffy Ice Cream dengan topping Oreo" << endl;
            break;
          case 2 :
            cout << "Anda memilih Fluffy Ice Cream dengan topping Choco Chips" << endl;
            break;
          case 3 :
            cout << "Anda memilih Fluffy Ice Cream dengan topping Bubble Gum" << endl;
            break;
          default:
            cout << "Pilihan topping tidak tersedia" << endl;
        }
        break;
    case 3 :    //Pemilihan topping Es Krim 3. Mix Cup Ice Cream
        cout << "Es Krim yang anda pilih adalah Mix Cup Ice Cream" << endl;
        cout << endl;
        cout << "Berikut ini adalah daftar topping Es Krim" << endl;
        cout << "0. Tanpa topping" << endl;
        cout << "1. Oreo" << endl;
        cout << "2. Choco Chips" << endl;
        cout << "3. Bubble Gum" << endl;
        cout << endl;
        cout << "Pilih topping yang diinginkan: ";
        cin >> topping_eskrim3;
        switch (topping_eskrim3)
        {
          case 0 :
            cout << "Anda memilih Mix Cup Ice Cream tanpa tambahan topping" << endl;
            break;
          case 1 :
            cout << "Anda memilih Mix Cup Ice Cream dengan topping Oreo" << endl;
            break;
          case 2 :
            cout << "Anda memilih Mix Cup Ice Cream dengan topping Choco Chips" << endl;
            break;
          case 3 :
            cout << "Anda memilih Mix Cup Ice Cream dengan topping Bubble Gum" << endl;
            break;
          default:
            cout << "Pilihan topping tidak tersedia" << endl;
        }
        break;
    default:    //Tidak ada di daftar menu
        cout << "Varian Es Krim lain tidak tersedia" << endl;
    }
    cout << endl;
    cout << "Pesanan anda segera diproses" << endl;
    cout << "==========================================================" << endl;
    return 0;
}


Hasil Run Coding




Demikian penjelasan tentang nested condition beserta contohnya dari saya. Semoga informasi yang diberikan dapat bermanfaat dalam belajar programming. Mohon maaf apabila terdapat kesalahan kata dalam penyajian informasi. Tetap semangat semua!!! Terimakasih! 😄


Komentar

Postingan populer dari blog ini

Nested Loop

Notasi Algoritmik

Looping / Perulangan