C++ - Pengambilan Keputusan if, switch-case, dan Operator ? : - nblognlife

C++ - Pengambilan Keputusan if, switch-case, dan Operator ? :

C++ - Contoh Program Pengambilan Keputusan if, switch-case, dan Operator ? :

    Pada pemrograman, pernyataan pengambilan keputusan digunakan oleh pemrogram untuk mengambil suatu keputusan diantara satu atau lebih konsisi yang ada. Sebuah pernyataan akan dijalankan/dieksekusi jika kondisi/persyaratan bernilai benar (terpenuhi). Kali ini akan dibahas tentang if, swich, dan operator ? :.

Flowchart Pengambilan Keputusan Secara Umum

 if, if-else, if-else if-else 
 if 
“Jika kondisi pada if bernilai benar (terpenuhi), maka pernyataan  di dalam if akan  dijalankan, namun  jika kondisi  tidak  terpenuhi  maka  pernyataan di dalam if akan diabaikan.”

Bentuk penulisan if
if (kondisi/persyaratan)
{
pernyataan;
pernyataan;
...
}

Berikut adalah contoh program if :
/*
C++ - Pengambilan Keputusan if, switch-case, dan Operator ? :
       Microsoft Visual Studio Express 2012
      [RS]
*/
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
      cout<<"IF"<<endl;
      cout<<"--"<<endl;

      if(10 > 5)
            cout<<"Benar, pernyataan di dalam if ini dijalankan"<<endl;

      _getche();
      return 0;
}

Output if
IF
--
Benar, pernyataan di dalam if ini dijalankan

PENJELASAN
Pada program di atas, kondisi pada if(10 > 5) akan dicek, karena 10 lebih besar dari 5 (kondisi benar) maka pernyataan di dalam if yaitu cout<<"Benar, pernyataan di dalam if ini dijalankan"<<endl; dijalankan.



 if-else 
“Jika kondisi pada if bernilai benar (terpenuhi), maka pernyataan  di dalam if akan  dijalankan, namun  jika kondisi  tidak  terpenuhi  maka  pernyataan di dalam else yang akan dijalankan.”

Bentuk penulisan if-else
if (kondisi/persyaratan)
{
pernyataan;
pernyataan;
...
}
else
{
pernyataan;
pernyataan;
...
}

Berikut adalah contoh program if-else :
/*
C++ - Pengambilan Keputusan if, switch-case, dan Operator ? :
       Microsoft Visual Studio Express 2012
      [RS]
*/
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
      int bil;

      cout<<"MENENTUKAN BILANGAN GANJIL ATAU GENAP"<<endl;
      cout<<"-------------------------------------"<<endl;
      cout<<"Masukkan bilangan : ";
      cin>>bil;

      cout<<endl;
      cout<<bil<<" termasuk dalam bilangan ";

      //jika hasil modulus sama dengan 0
      if(bil%2 == 0)
            cout<<"GENAP"<<endl;
      else //selain itu
            cout<<"GANJIL"<<endl;

      _getche();
      return 0;
}

Output if-else
MENENTUKAN BILANGAN GANJIL ATAU GENAP
-------------------------------------
Masukkan bilangan : 53

53 termasuk dalam bilangan GANJIL


PENJELASAN
Pada program di atas, user melakukan input bilangan 53, kondisi pada if(bil%2 == 0) akan dicek, karena 53 modulus 2  hasilnya tidak sama dengan 0 maka pernyataan di dalam if diabaikan dan pernyataan di dalam else yaitu cout<<"GANJIL"<<endl; yang dijalankan.



 if-else if-else 
“Jika kondisi pada if bernilai benar (terpenuhi), maka pernyataan  di dalam if akan  dijalankan, namun  jika kondisi  tidak  terpenuhi  maka kondisi pada else if akan diperiksa, jika kondisi terpenuhi maka pernyataan di dalam else if akan dijalankan. Namun, jika kondisi pada else if juga tidak terpenuhi maka  pernyataan di dalam else yang akan dijalankan.”

Bentuk penulisan if-else if-else
if (kondisi/persyaratan)
{
pernyataan;
pernyataan;
...
}
else if
{
pernyataan;
pernyataan;
...
}
else
{
pernyataan;
pernyataan;
...
}


Berikut adalah contoh program if-else if-else :
/*
C++ - Pengambilan Keputusan if, switch-case, dan Operator ? :
       Microsoft Visual Studio Express 2012
      [RS]
*/
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
      int kode_bulan;

      cout<<"PILIH BULAN"<<endl;
      cout<<"-----------"<<endl;
      cout<<"Masukkan bulan dalam angka (1-12) : ";
      cin>>kode_bulan;

      cout<<endl;
      cout<<"-> ";

      //pernyataan if-else
      if(kode_bulan==1)
            cout<<"Januari"<<endl;
      else if(kode_bulan==2)
            cout<<"Februari"<<endl;
      else if(kode_bulan==3)
            cout<<"Maret"<<endl;
      else if(kode_bulan==4)
            cout<<"April"<<endl;
      else if(kode_bulan==5)
            cout<<"Mei"<<endl;
      else if(kode_bulan==6)
            cout<<"Juni"<<endl;
      else if(kode_bulan==7)
            cout<<"Juli"<<endl;
      else if(kode_bulan==8)
            cout<<"Agustus"<<endl;
      else if(kode_bulan==9)
            cout<<"September"<<endl;
      else if(kode_bulan==10)
            cout<<"Oktober"<<endl;
      else if(kode_bulan==11)
            cout<<"November"<<endl;
      else if(kode_bulan==12)
            cout<<"Desember"<<endl;
      else
            cout<<"Kode bulan tidak sesuai"<<endl;

      _getche();
      return 0;
}

Output if-else if-else
PILIH BULAN
-----------
Masukkan bulan dalam angka (1-12) : 7

-> Juli

PENJELASAN
Pada program di atas, user melakukan input bilangan 7, kondisi pada if(kode_bulan==1)akan dicek, karena kode_bulan sama dengan 1 (bukan 7)  maka program akan melakukan pengecekan pada kondisi else if sampai bertemu dengan kondisi benar atau tidak sama sekali (else akan dijalankan). Ternyata kondisi pada  else if(kode_bulan==7) terpenuhi, sehingga pernyataan di dalam else if(kode_bulan==7), yaitu cout<<"Juli"<<endl; dijalankan.

*Catatan : Apabila pernyataan di dalam if hanya terdiri dari satu baris maka tanda { } boleh digunakan atau boleh juga tidak.



 switch - case 
switch-case  merupakan  pernyataan  yang  digunakan  untuk  menanggani pengambilan  keputusan  yang  melibatkan  sejumlah  alternatif pilihan.  Pernyataan switch-case memiliki  kegunaan  yang  sama  seperti  if  –  else  bertingkat,  tetapi  untuk memeriksa data yang bertipe karakter atau integer.

“Setiap  case  akan  dijalankan  jika  syarat  nilai konstanta terpenuhi dan default akan dijalankan jika semua case di atasnya tidak terpenuhi.”

Bentuk penulisan switch - case
switch(ekspresi)
{
case <konstanta1> :
pernyataan;
...
break;

case <konstanta2> :
pernyataan;
...
break;
...

default :
            pernyataan;
...
            break;
}

Pernyataan  break  digunakan untuk keluar dari switch. Jika break ini tidak ada, maka program akan diteruskan ke cabang-cabang yang lainnya.

Berikut adalah contoh program switch - case:
/*
C++ - Pengambilan Keputusan if, switch-case, dan Operator ? :
       Microsoft Visual Studio Express 2012
      [RS]
*/
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
      int kode_bulan;

      cout<<"PILIH BULAN"<<endl;
      cout<<"-----------"<<endl;
      cout<<"Masukkan bulan dalam angka (1-12) : ";
      cin>>kode_bulan;

      cout<<endl;
      cout<<"-> ";

      //pernyataan switch
      switch (kode_bulan)
      {
      case 1:
            cout<<"Januari"<<endl;
            break;
      case 2:
            cout<<"Februari"<<endl;
            break;
      case 3:
            cout<<"Maret"<<endl;
            break;
      case 4:
            cout<<"April"<<endl;
            break;
      case 5:
            cout<<"Mei"<<endl;
            break;
      case 6:
            cout<<"Juni"<<endl;
            break;
      case 7:
            cout<<"Juli"<<endl;
            break;
      case 8:
            cout<<"Agustus"<<endl;
            break;
      case 9:
            cout<<"September"<<endl;
            break;
      case 10:
            cout<<"Oktober"<<endl;
            break;
      case 11:
            cout<<"November"<<endl;
            break;
      case 12:
            cout<<"Desember"<<endl;
            break;

      default:
            cout<<"Kode bulan tidak sesuai"<<endl;
            break;
      }

      _getche();
      return 0;
}

Output switch-case
PILIH BULAN
-----------
Masukkan bulan dalam angka (1-12) : 7

-> Juli

PENJELASAN
Pada program di atas, user melakukan input bilangan 7,  selanjutnya konstanta pada case akan dicek dimulai dari case pertama. Konstanta pada  case 7: terpenuhi, maka pernyataan dalam case tersebut, yaitu cout<<"Juli"<<endl; dijalankan selanjutya break dijalankan untuk keluar dari switch.



 Operator ? : 
“Jika kondisi bernilai benar (terpenuhi), maka pernyataan1 akan  dijalankan, namun  jika kondisi  tidak  terpenuhi  maka  pernyataan2 yang akan dijalankan.”

Bentuk penulisan Operator ? :
<kondisi/persyaratan> ? <pernyataan1> : <pernyataan2>

Berikut adalah contoh Program Operator ? :
/*
C++ - Pengambilan Keputusan if, switch-case, dan Operator ? :
       Microsoft Visual Studio Express 2012
      [RS]
*/
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
      int bil1, bil2, hasil;

      cout<<"MENENTUKAN BILANGAN LEBIH BESAR"<<endl;
      cout<<"-------------------------------"<<endl;
      cout<<"Masukkan bilangan 1 : ";
      cin>>bil1;
      cout<<"Masukkan bilangan 2 : ";
      cin>>bil2;

      cout<<endl;
      //pernyataan dengan operator ? :
      hasil = (bil1>bil2)? bil1 : bil2;
      cout<<hasil<<" merupakan bilangan yang bernilai lebih besar";

      _getche();
      return 0;
}

Output Operator ? :
MENENTUKAN BILANGAN LEBIH BESAR
-------------------------------
Masukkan bilangan 1 : 53
Masukkan bilangan 2 : 64

64 merupakan bilangan yang bernilai lebih besar

PENJELASAN
Pada program di atas, user melakukan input bilangan 53 dan 64, kondisi pada (bil1>bil2)? akan dicek, karena kondisi tidak terpenuhi/bernilai salah maka pernyataan2 yang dijalanlan, yaitu bil2. Kemudiaan bil2 disimpan dalam variabel hasil, yang kemudian ditampilkan melalui pernyataan cout<<hasil<<" merupakan bilangan yang bernilai lebih besar";.

Penggunaan operator ? : sama dengan penggunaan if-else.


[RS]

Klik Like & Share jika postingan ini bermanfaat
Apa tanggapan Anda?

Berikan tanggapan Anda melalui kolom komentar yang telah disediakan.
- Gunakan bahasa yang sopan;
- Saat menjadikan postingan pada blog ini sebagai referensi, jangan lupa mencantumkan sumbernya (link dari blog ini).

Jika blog ini bermanfaat jangan lupa memberikan 'like' atau 'share' untuk mendapatkan update terbaru.

Terima kasih