Kamis, 23 November 2017

PERCABANGAN



STATEMENT PERCABANGAN

·         Operasi Percabangan

Salah satu kelebihan computer dibandingkan dengan manusia adalah kemampuannya untuk melakukan istruksi berulang kali tanpa mengenal lelah dan bosan.
Pada algoritma runtunan telah kita lihat bahwa setiap pernyataan selalu dilakukan bila telah sampai gilirannya. Namun demikian ada kalanya suatu pernyataan atau perintah hanya bisa dilakukan bila memenuhi suatu kondisi atau persyaratan tertentu. Algoritma ini kita sebut dengan algoritma seleksi kondisi atau juga percabangan.

Contoh. Misalnya kita ingin menentukan apakah suatu bilangan merupakan bilangan genap atau ganjil. Algoritmanya dapat kita jabarkan

1.      Mulai
2.      Masukkan satu bilangan (X)
3.      jika X habis dibagi dua maka lanjut ke 4. Jika tidak lanjut ke 5
4.      tulis ‘X bilangan genap’. Lanjut ke 6.
5.      tulis ‘X bilangan ganjil’
6.      Selesai

Perhatikan bahwa ada dua kemungkinan perintah yang akan dikerjakan setelah perintah ke-3 dikerjakan. Jika X habis dibagi dua maka selanjutnya perintah ke-4 yang dikerjakan, kemudian melompat ke 6 (perintah 5 tidak dikerjakan). Sebaliknya jika X tidak habis dibagi dua perintah selanjutnya melompat ke-5 (perintah 4 tidak dikerjakan) dan kemudian berakhir pada perintah ke-6.

Percabangan yang dimaksud adalah suatu pemilihan statemen yang akan dieksekusi dimana pemilihan tersebut didasarkan atas kondisi tertentu.  Pada C++ jenis struktur yang digunakan untuk mengimplementasikan suatu percabangan ada dua yaitu: struktur if dan struktur switch.

 Statemen yang terdapat dalam sebuah blok percabangan akan dieksekusi jika kondisi yang didefinisikan terpenuhi (bernilai benar) Artinya jika kondisi tidak terpenuhi (bernilai salah) maka statemen tersebut tidak ikut dieksekusi atau akan diabaikan oleh compiler.



B.  Mengenal Struktur Percabangan Pada C dan C++


Struktur Percabangan/Selection mempunyai 4 perintah percabangan , yaitu : if , if…..else , if…else if, dan switch. Untuk lebih jelasnya silakan lihat penjabaran masing – masing perintah percabangan dibawah ini :

1.       Perintah if :

Perintah if digunakan untuk menjalankan satu atau lebih perintah berdasarkan suatu kondisi. Contoh penulisan:
If (kondisi)
            {
       Statement;
}

  
2.      Perintah if….else  :

Perintah if…else digunakan  untuk memilih salah satu dari 2 pernyataan yang ditentukan . Perintah ini akan menjalankan perintah tertentu jika TRUE dan akan menjalankan perintah tertentu jika FALSE . Contoh penulisan :

if (kondisi)
{
     Statement_1;
}
else
{
     Statement_2;
}

3.      Perintah if ….else if:

Perintah else if digunakan untuk menjalankan suatu pernyataan dengan melibatkan lebih dari satu kondisi ( banyak kondisi) Contoh penulisan :

if (kondisi_1)
{
     Statement_1;
}
else if (kondisi_2)
{
     Statement_2;
}
else
{
     Statement_3;

4.      Perintah switch :

Perintah switch digunakan sebagai alternative lpengganti dari perintah if…else if. Perintah switch akan menyeleksi kondisi yang diberikan dan membandingkan hasilnya dengan konstanta – konstanta yang ada pada case . Jika case sama dengan kondisi , maka system akan menjalankan perintah tersebut dan akan berhenti pada perintah break. Contoh penulisan :

switch (kondisi)
{
     case konstanta_1:
                 statement_1;
     break;
           case konstanta_2:
                 statement_2;
          break;
           default:
                 statement_3;
}


C.  Struktur Kondisi Pada Operasi Percabangan
1. Struktur Satu Kondisi (Perintah If)
Struktur ini merupakan struktur yang paling sederhana karena hanya melibatkan satu buah ekspresi akan diperiksa. Pada konstruksi perintah if, C++ tidak memiliki kata kunci (keyword) then.


Bentuk umum:

if  (kondisi)
  pernyataan;
atau
if (kondisi)
{
  statemen1;
  statemen2;
  …
}
Contoh:
§  if (detik == 60)
menit = menit + 1;
§  if (Angka %2 == 0)
cout<<”Bilangan genap”;
§  if (sisi  > 0)
{
          Luas = panjang * lebar;
          Isi = Luas*tinggi;
}
Kondisi digunakan untuk menentukan pengambilan keputusan, operator yang digunakan adalah relational dan logical operators.
Contoh program:

#include <iostream.h>
int main()
{
 int nilai;
//memasukkan bilangan bulat
cout<<”Masukkan sebuah bilangan bulat: “;
cin>>nilai;
//menampilkan teks jika nilai yang tersimpan lebih besar dari 0
if (nilai > 0)
cout<<“Nilai yang Anda masukkan adalah bilangan positif“;
return 0;
}

Hasil eksekusi program di atas bersifat dinamis artinya tidak setiap proses eksekusi program akan menghasilkan hasil yang sama.  Jika user memasukkan angka lebih besar dari 0 maka program ini akan menampilkan teks “Nilai yang Anda masukkan adalah bilangan positif”.
Selain itu kita juga bisa nenggunakan operator || dan && dalam menentukan sebuah ekspresi. Contoh program:

#include <iostream.h>
int main()
{
 int bilangan;
 char huruf;
//memasukkan bilangan bulat
cout<<”Masukkan sebuah bilangan bulat: “;
cin>>bilangan;
if ((bilangan > 0) && (bilangan < 10))
cout<<bilangan<<” lebih besar dari nol dan lebih kecil dari  sepuluh”;
//memasukkan huruf
cout<<“\n“;
cout<<”Masukkan sebuah huruf: “;
cin>>huruf;
if ((huruf == ‘A’) || (huruf == ‘a’) || (huruf == ‘I’) ||
(huruf == ‘i’) || (huruf == ‘U’) || (huruf == ‘u’) ||
(huruf == ‘E’) || (huruf == ‘e’) || (huruf == ‘O’) ||
(huruf == ‘o’))
{
 cout<<huruf<<” adalah huruf vokal”;
}
return 0;
}

2. Struktur Dua Kondisi (Perintah If – Else)

Struktur percabangan jenis ini sedikit lebih kompleks bila dibandingkan dengan struktur yang hanya memiliki satu kondisi. Konsep ini sangat sederhana yaitu pada struktur jenis ini terdapat sebuah statemen khusus yang berguna untuk mengatasi kejadian apabila kondisi yang didefinisikan tersebut tidak terpenuhi (bernilai salah). Perintah ini memberikan satu alternatif dari dua kemungkinan.
Bentuk umum:

if (kondisi)
{
  statemen_jika_kondisi_terpenuhi;
}
else
{
 statemen_jika_kondisi_tidak_terpenuhi;
}
Contoh:
#include <iostream.h>
int main()
{
 int nilai;
//memasukkan bilangan bulat
cout<<”Masukkan sebuah bilangan bulat: “;
cin>>nilai;
//pengecek bilangan apakah habis dibagi dua atau tidak
if (nilai %2 == 0)
{
  cout<<nilai<<“adalah bilangan genap“;
}
else
{
  cout<<nilai<<“adalah bilangan ganjil“;
}
return 0;
}
3. Struktur Tiga Kondisi (Perintah Multiple If – Else)

Struktur ini merupakan struktur percabangan yang biasanya membingungkan para programmer pemula. Percabangan jenis ini merupakan perluasan dari struktur yang memiliki dua kondisi diatas yaitu dengan menyisipkan satu atau lebih kondisi ke dalamnya. Bentuk umum:

if (kondisi1)
{
  statemen_jika_kondisi1_terpenuhi;
}
else if (kondisi2)
{
 statemen_jika_kondisi2_terpenuhi;
}
        else if (kondisi3)
{
 statemen_jika_kondisi3_terpenuhi;
}
        ....
   else
{
 statemen_jika_semua_kondisi_tidak_terpenuhi;
}


Contoh program:
#include <iostream.h>
int main()
{
 int nilai;
//memasukkan bilangan bulat
cout<<”Masukkan sebuah bilangan yang akan diperiksa: “;
cin>>nilai;
//pengecek bilangan apakah habis dibagi dua atau tidak
if (nilai > 0)
{
  cout<<nilai<<“ adalah bilangan positif“;
}
else if (nilai < 0)
{
  cout<<nilai<<“ adalah bilangan negatif“;
}
else
{
  cout<<“Anda memasukkan bilangan NOL“;
}
return 0;
      }

PERCABANGAN

STATEMENT PERCABANGAN ·          Operasi Percabangan Salah satu kelebihan computer dibandingkan dengan manusia adalah kemampuan...