C++ Tutorial

C++ – Branching (Percabangan)

Waktu yang dibutuhkan: 30-40 menit.

Hi kembali lagi di tutorial C++, kali ini kita akan membahas mengenai percabangan. Pernahkah kalian berpikir untuk membuat program yang dapat merespon input dari user? Jika user memasukkan sebuah input program akan membalasnya dengan balasan tertentu.

Namun bagaimana membuat program yang dapat melakukan hal tersebut? Selama ini kita telah mempelajari bahwa di dunia pemrograman setiap perintah pada code program kita akan dijalankan satu per satu urut dari atas ke bawah. Bagaimana kita dapat melakukan action berdasarkan input / kondisi tertentu? Di sinilah percabangan dibutuhkan.

Kata kunci yang paling penting di sini adalah jika atau if. Perhatikan illustrasi di bawah ini,

Choices
Choices

Suatu saat kita ingin bermain-main entah itu online games, game di hp, atau bermain yang sifatnya berolahraga seperti basket, sepakbola, dll. Biasanya kita ingin melakukan ini untuk refreshing sejenak mengistirahatkan diri dari padatnya aktifitas sehari-hari. Namun kita tetap harus menyelesaikan pekerjaan-pekerjaan kita mungkin itu sebagai murid, sebagai ayah, atau yang lainnya.

Konsep percabangan / branching pada programming sama seperti di kehidupan nyata. Bahwa terkadang under some circumtances atau dalam kondisi tertentu kita harus melakukan sesuatu. Jika kondisi-kondisi tersebut terpenuhi maka kita harus melakukan serangkaian aktivitas tertentu, atau dalam pemrograman melakukan perintah-perintah tertentu.

Sebagai contoh mari kita buat program yang dapat mendeteksi angka input adalah angka positif atau bukan.

Syntax dari sebuah if sangat sederhana yaitu,

Bagian kondisi diatas digantikan dengan sebuah ekspresi yang menghasilkan sebuah nilai boolean, misalnya pada contoh di atas “angka > 0” akan menghasilkan nilai true jika variable angka bernilai 1, 2, 3, dst jika variable angka bernilai 0, -1, -2, dst maka akan menghasilkan nilai false.


Comparison operator

Comparison operator atau operator perbandingan digunakan untuk membandingkan 2 hal. Operator ini sangat membantu kita dalam menuliskan kondisi pada if yang kita inginkan. Operator perbandingan yang ada pada C++ antara lain,

  1. == : true bila ruas kiri sama dengan ruas kanan.
  2. !=true bila ruas kiri tidak sama dengan ruas kanan.
  3. >= : true bila ruas kiri lebih besar atau sama dengan ruas kanan.
  4. <= : true bila ruas kiri lebih kecil atau sama dengan ruas kanan.
  5. < : true bila ruas kiri lebih kecil ruas kanan.
  6. > : true bila ruas kiri lebih besar ruas kanan.

Yang dimaksud dengan ruas kiri adalah bagian yang berada di sebelah kiri operator, begitu juga dengan ruas kanan. Di salah satu sisi tidak harus berisi sebuah angka atau variable, dapat juga diisi dengan operasi-operasi terlebih dahulu. Sebagai contoh perhatikan potongan kode program di bawah ini,

Kode di atas akan melakukan operasi (a+b) terlebih dahulu baru melakukan perbandingan antara nilai (a+b) dengan nilai c. Jika nilainya sama maka akan menghasilkan nilai true atau false jika tidak sama.

Sebagai latihan coba-cobalah mengganti kondisi if pada program di atas dengan operator-operator perbandingan yang ada.


Logical operator

Logical operator atau operator logika merupakan operator yang akan kita gunakan jika kita memiliki lebih dari satu kondisi pada sebuah if. Contohnya kita ingin mengecek apakah bilangan input berada di antara range 0 – 100. Jika ya print “input benar”, jika salah print “input salah”.

Pada permasalahan ini kita harus mengecek sebuah bilangan yang berada di antara sebuah range, sedangkan kemampuan untuk membandingkan pada C++ hanya dapat melakukan >= atau <= secara terpisah tidak dapat sekaligus.

Sebenarnya kondisi ini dapat kita bagi menjadi 2 yaitu, input >= 0 dan input <= 100. Nah dan (AND) itulah yang disebut dengan operator logika. Pada C++ logical operator and atau operator logika dan dilambangkan dengan ‘&&’ sehingga potongan kode untuk permasalahn ini adalah,

Cobalah untuk membuat program dengan potongan kode di atas hingga menghasilkan output sebagai berikut,

Jika input benar akan menghasilkan,

Output input benar
Output input benar

Jika input salah akan menghasilkan,

Output input salah
Output input salah

Operator logika yang ada di C++,

  1. && : operator logika dan (AND)
  2. || : operator logika atau (OR)
  3. ! : operator logika tidak (NOT), operator ini berfungsi untuk menginverse nilai boolean (true -> false, false -> true)

Beberapa contoh penggunaan operator logika,


Tipe-tipe percabangan

Pada pembahasan di atas kita telah mengenal struktur dasar dari sebuah if, ternyata bentuk-bentuk ini dapat dikembangkan menjadi bentuk-bentuk lain yang lebih kompleks ataupun lebih sederhana. Contoh-contohnya adalah,

  1. if tanpa else
  2. if, else-if, else
  3. nested-if (ada if di dalam if)

Yay dengan ini selesai sudah tutorial kali ini mengenai percabangan! Bagian ini memang cukup banyak karena merupakan salah satu bagian penting untuk menguasai teknik-teknik programming.

Sebagai latihan kalian dapat men-download file .exe di sini. Cobalah meniru program tersebut agar sesuai dengan program yang ada di contoh!

Jika ada kesulitan jangan takut untuk bertanya dengan memberikan komentar pada post ini! Berikutnya kita akan membahas sedikit mengenai switch case. Cheers!

One thought on “C++ – Branching (Percabangan)

Leave a Reply

Your email address will not be published. Required fields are marked *