Percabangan Pada C++


Image result for percabangan pada c++


Percabangan

digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada.


Pernyataan IF

Pernyataan if mempunyai pengertian, “Jika kondisi bernilai benar, maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan”. Dari pengertian tersebut dapat dilihat dari diagram alir berikut:
Flow Chart Percabangan
Bentuk Umum dari pernyataan if :

if (kondisi) {
 // pernyataan 
}

Contoh Program If

#include <iostream.h> 
#include <conio.h>

void main() { 
if (true) { 
 cout << "Perintah ini akan dijalankan\n";
 } 
if (!true) { 
 cout << "Perintah ini TIDAK akan dijalankan\n"; 
 } 
if (1+1 == 2 && 100 > 99) { 
 cout << "Anda benar\n"; 
 } 
getch(); 
}

Pada contoh di atas, perintah akan dijalankan jika kondisi akhir bernilai benar. Berikut ini contoh program untuk menentukan besarnya potongan dari pembelian barang dengan kriteria: 
  • Tidak ada potongan jika total pembelian kurang dari Rp. 50.000,- 
  • Jika total pembelian lebih dari atau sama dengan Rp. 50.000,- potongan yang diterima sebesar 20% dari total pembelian.

Contoh lain penggunaan pernyataan if dalam Program Belanja
#include <iostream.h> 
#include <conio.h>

void main() { 
double tot_beli, potongan = 0, jum_bayar = 0; 
cout << "Total pembelian Rp. "; 
cin >> tot_beli; 
if ( tot_beli >= 50000 ) { 
 potongan = 0.2 * tot_beli; 
 } 
cout << "Besarnya potongan Rp. " << potongan << endl; 
jum_bayar = tot_beli - potongan; 
cout << "Jumlah yang harus dibayarkan Rp . " << jum_bayar; 
getch(); 
}


Pernyatan If else
Pernyataan if mempunyai pengertian, “Jika kondisi bernilai benar,
maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka
akan mengerjakan perintah-2”. Dari pengertian tersebut dapat dilihat
dari diagram alir berikut:
Flow Chart if-else

Bentuk Umum dari pernyataan if-else:
if (kondisi) { 
// pernyataan 1 
else { 
// pernyataan 2 
}
Berikut ini contoh program untuk menentukan besarnya potongan dari pembelian barang dengan kriteria: 
  • Jika total pembelian kurang dari Rp. 50.000,- maka potongan yang diterima sebesar 5% dari total pembelian.
  • Jika total pembelian lebih dari atau sama dengan Rp. 50.000,- potongan yang diterima sebesar 20% dari total pembelian.
Contoh Program
#include <iostream.h> 
#include <conio.h>


void main() { 
double tot_beli, potongan = 0, jum_bayar = 0; 
cout << "Total pembelian Rp. "; 
cin >> tot_beli; 
if ( tot_beli >= 50000 ) { 
 potongan = 0.2 * tot_beli; 
 } 
else  { 
 potongan = 0.05 * tot_beli; 
 } 
cout << "Besarnya potongan Rp. " << potongan << endl; 
jum_bayar = tot_beli - potongan; 
cout << "Jumlah yang harus dibayarkan Rp . " << jum_bayar; 
getch(); 
}

Pernyataan Nested IF Nested if merupakan pernyataan if yang berada di dalam pernyataan if yang lain. Bentuk umum penulisan pernyataan nested if adalah sebagai berikut : if (kondisi1) {    if (kondisi2) {   // perintah    }    else {    // perintah    }  else {    if (kondisi3) {    // perintah    }    else {  // perintah    } } Contoh Kasus: Suatu perusahaan memberikan komisi kepada para salesman dengan ketentuan sebagai berikut:
  • Bila salesman dapat menjual barang hingga Rp. 2.000.000, - maka akan diberikan uang jasa sebesar Rp. 500.000,- ditambah dengan uang komisi Rp. 10% dari pendapatan yang diperoleh hari itu. 
  • Bila salesman dapat menjual barang di atas Rp. 2.000.000, - maka akan diberikan uang jasa sebesar Rp. 500.000,- ditambah dengan uang komisi Rp. 15% dari pendapatan yang diperoleh hari itu. 
  • Bila salesman dapat menjual barang di atas Rp. 5.000.000, - maka akan diberikan uang jasa sebesar Rp. 1.000.000,- ditambah dengan uang komisi Rp. 20% dari pendapatan yang diperoleh hari itu.
Contoh Program
#include <iostream.h> 
#include <conio.h>

void main() { 
long pendapatan, jasa = 0, komisi = 0, total = 0; 
cout << "Pendapatan hari ini Rp. "; 
cin >> pendapatan; 

if ( pendapatan > 0 && pendapatan <= 2000000) { 
jasa = 500000; 
komisi = 0.1 * pendapatan;
} 
else { 
 if ( pendapatan <= 5000000 ) { 
 jasa = 500000; 
 komisi = 0.15 * pendapatan; 
 } 
 else { 
 jasa = 1000000; 
 komisi = 0.2 * pendapatan; 
 } 
} 
total = komisi + jasa; 
cout << "Uang jasa Rp. " << jasa << endl; 
cout << "Uang Komisi Rp. " << komisi << endl; 
cout << "------------------------------" << endl; 
cout << "Hasil Total Rp. " << total << endl; 
getch(); 
}


Pernyataan If else Majemuk Bentuk dari if-else majemuk bertingkat sebenarnya mirip dengan nested if. Keuntungan penggunakan if-else bertingkat dibanding dengan nested if adalah bentuk penulisannya yang lebih sederhana. Bentuk umum penulisannya adalah sebagai berikut : if (kondisi1) {  // perintah 1  else if (kondisi2) {  // perintah 2  }  else {  // perintah N  } contoh Program

#include <iostream.h> 
#include <conio.h>

void main() { 
long pendapatan, jasa = 0, komisi = 0, total = 0; 
cout << "Pendapatan hari ini Rp. "; 
cin >> pendapatan; 
if ( pendapatan > 0 && pendapatan <= 2000000) { 
jasa = 500000; komisi = 0.1 * pendapatan; 
} 
else if ( pendapatan <= 5000000 ) { 
jasa = 500000; komisi = 0.15 * pendapatan; 
} 
else { 
jasa = 1000000; komisi = 0.2 * pendapatan; 
} 
total = komisi + jasa; 
cout << "Uang jasa Rp. " << jasa << endl; 
cout << "Uang Komisi Rp. " << komisi << endl; 
cout << "------------------------------" << endl; 
cout << "Hasil Total Rp. " << total << endl; 
getch(); 
}

Pernyataan Switch Case
Pernyataan switch – case memiliki kegunaan yang sama seperti if – else 
bertingkat, tetapi untuk memeriksa data yang bertipe karakter atau integer. Secara umum bentuk penulisannya adalah sebagai berikut: switch (ekspresi) {  case kontanta-1:  // pernyataan 1 break;  case konstanta-2: // perintah 2 break;  default:  // perintah  } contoh program
#include <iostream.h> 
#include <conio.h>


void main() { 
int nHari; 
cout << "Masukkan No Hari [1..7] : "; 
cin >> nHari; 
cout << "Ini adalah hari "; 
switch (nHari) { 
case 1: 
cout << "Ahad"; 
break; 
case 2: 
cout << "Senin"; 
break; 
case 3: 
cout << "Selasa"; 
break;
case 4: 
cout << "Rabu"; 
break; 
case 5: 
cout << "Kamis"; 
break; 
case 6: 
cout << "Jum'at"; 
break; 
case 7: 
cout << "Sabtu"; 
break; 
default: 
cout << "Kiamat :))"; 
} 
getch(); 
}

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



Sumber: