Penjelasan Pernyataan IF
Pernyataan IF adalah salah satu pernyataan penyeleksian yang memungkinkan kita memanipulasi aliran jalannya program berdasarkan conditional expression. Hal ini dapat memungkinkan kita membuat program yang berjalan secara fleksibel sesuai keadaan dari pengguna dan mesin.
Penyeleksian if
adalah pernyataan penyeleksian yang mencari kebenaran dari conditional expression yang disebutkan. conditional expression harus berupa bilangan Boolean atau operasi yang menghasilkan bilangan Boolean dan menyatakan benar atau salah atas expression tersebut.
Ketika mesin eksekusi bertemu dengan penyeleksian if maka CPU akan memeriksa kebenaran dari conditional expression yang disebutkan, jika benar (true) maka perintah yang ada di dalamnya akan dijalankan, jika salah (false) maka akan memeriksa pernyataan else if
(jika ada), hal itu dilakukan berulang satu demi satu hingga menemukan kondisi yang bernilai benar (true). Jika tidak ditemukan maka akan melakukan perintah pernyataan else
. Jika else
tidak ada maka pernyataan if
secara keseluruhan akan diabaikan.
if(Kondisi){ Pernyataan; }else if(Kondisi){ Pernyataan; }else{ Pernyataan; }
Secara keutuhan penyataan penyeleksian if
memiliki bentuk struktur seperti di atas, dan juga ada bagian yang termasuk sebagai opsional (anda bebas untuk menyertakan atau tidak) yaitu else if dan else. Dan setiap bentuk dari pernyataan if memiliki nama-nama yang unik.
Bentuk Pernyataan IF
if(Kondisi){ Pernyataan; }
Bentuk Pernyataan IF-ELSE
if(Kondisi){ Pernyataan; }else{ Pernyataan; }
Bentuk Pernyataan IF-ELSE Majemuk
if(Kondisi){ Pernyataan; }else if(Kondisi){ Pernyataan; }else{ Pernyataan; }
jika badan pernyataan merupakan pernyataan tunggal pada badan pernyataan if kita tidak diwajibkan menggunakan sepasang tanda kurung kurawal { }
.
if(Kondisi) Pernyataan; else if(Kondisi) Pernyataan; else Pernyataan;
Hal itu dapat dilakukan, kompilator akan menganggap bahwa satu pernyataan setelah pernyataan if
, else if
atau else
akan dianggap sebagai substatement atau badan dari pernyataan tersebut.
Kondisi
setelah keyword if
atau else if
adalah tempat dimana anda menaruh sebuah nilai boolean atau ekspresi seperti perbandingan, logika dan lain-lain yang menghasilkan bilangan Boolean. Badan pernyataan if
akan dieksekusi tergantung pada kebenaran dari kondisi
Jika evaluasi ekspresi bernilai benar (true) sesuai kondisi maka program akan melaksanakan perintah (pernyataan) di dalamnya. Jika tidak maka akan diabaikan dan beralih ke pilihan lain atau keluar dari pernyataan penyeleksian if
.
else if
adalah pilihan alternative dari penyeleksian untuk mencari kondisi yang diinginkan, else if
memiliki fungsi yang sama seperti pernyataan if
dan diletakan setelah pernyataan if
.
else
adalah pilihan terakhir yang akan dijalankan jika semua pilihan tidak memiliki nilai benar (true) pada kondisi yang ada. else
merupakan pernyataan opsional untuk digunakan berdasarkan kebutuhan, jika tidak menggunakan pernyataan else
maka keseluruhan dari pernyataan if
akan diabaikan.
Contoh Program :
#include <iostream> using namespace std ; int main() { int nomer ; cout<<"Masukkan [1/2/3] : ";cin>>nomer; if (nomer<=0){ cout<<"kurang dari 1"<<endl; }else if(nomer==1){ cout<<"1"<<endl; }else if(nomer==2){ cout<<"2"<<endl; }else if(nomer==3){ cout<<"3"<<endl; }else{ cout<<"lebih dari 3"<<endl; } return 0 ; }
Cara kerja CPU dalam melaksanakan pernyataan if
adalah; pertama CPU masuk dan mengevaluasi ekspresi yang tertera pada kondisi pernyataan if
, jika bernilai benar (true) maka pernyataan-pernyataan di dalam pernyataan if
akan dijalankan, setelah dijalankan maka CPU akan keluar dari keseluruhan pernyataan if
.
Jika salah (false) dan disertakan pernyataan else if
maka CPU akan mengevaluasi ekspresi pada else if
, jika bernilai benar (true) maka akan dijalankan, jika salah (false) akan beralih ke-lainnya, hal itu terjadi berulang-ulang hingga menemukan kondisi yang bernilai benar. jika dari semua pilihan tersebut tidak ada yang memiliki nilai benar (true) maka pernyataan secara keseluruhan if
akan diabaikan atau menjalankan pernyataan else
jika disertakan.
CPU akan membaca program dari atas kebawah, jika telah menemukan kondisi yang benar (true) maka akan dijalankan dan keluar dari keseluruhan pernyataan if, tidak peduli jika ada pilihan alternative lainnya yang memiliki nilai benar (true) pada kondisi yang dimilikinya.
Nested IF
Merupakan hal yang dimungkinkan dalam bahasa pemrograman C++ yaitu membuat pernyataan IF di dalam pernyataan IF. hal ini dapat memungkinkan anda untuk membuat tahapan penyeleksian yang berlipat-lipat.
Contoh Penulisan
if(kondisi){ if(kondisi){ pernyataan; }else if{ pernyataan; }else{ pernyataan; } }else if (kondisi){ if(kondisi){ pernyataan; }else if{ pernyataan; }else{ pernyataan; } }else{ if(kondisi){ pernyataan; }else if{ pernyataan; }else{ pernyataan; } }
Contoh Kasus :
Suatu perusahaan menjual baju dengan ketentuan sebagai berikut:
- Jika kode buku =
1
maka judul buku =Belajar C++
, dengan kode Diskon =S
, maka harganya45000
, Jika kode Diskon bukans
maka harganya50000
. - Jika kode buku =
2
maka judul buku =Belajar C/C++
, dengan code Diskon=S
, maka harganya65000
, Jika kode Diskon bukans
maka harganya70000
. - Jika user memasukan kode Selain kode Buku diatas, maka akan mencetak
salah memasukan kode
.
Penyelesaian :
#include <iostream> #include <string.h> using namespace std; int main( ){ char kode,kodeDiskon,namaBuku[30]; long harga=0; cout<<"Kode Buku : ";cin>>kode; cout<<"Kode Diskon : ";cin>>kodeDiskon; if (kode == '1') { strcpy(namaBuku,"Belajarcpp.com"); if (kodeDiskon=='S' || kodeDiskon =='s'){ harga=45000; } else { harga = 50000; } } else if (kode=='2') { strcpy(namaBuku,"Belajar C++"); if (kodeDiskon=='S' || kodeDiskon=='s'){ harga=65000; } else { harga = 70000; } } else { cout<<"Salah Kode Buku"<<endl; } cout<<"----------------------"<<endl; cout<<"Judul Buku : "<<namaBuku<<endl; cout<<"Harga Buku : "<<harga<<endl; return 0; }
I’ve been exploring for a little bit for any high quality articles or weblog posts on this
kind of house . Exploring in Yahoo I finally stumbled upon this web site.
Reading this information So i am satisfied to exhibit that I
have an incredibly excellent uncanny feeling I found out exactly what I needed.
I most certainly will make certain to do not put out of your mind this site and give it a look
on a continuing basis.
That is really interesting, You are an excessively skilled blogger.
I have joined your feed and stay up for in the hunt for more of your magnificent post.
Additionally, I have shared your site in my social networks
sangat membntu