Percabangan dan Perulangan
Akademi Komunitas Negeri Kajen
A. Percabangan
dalam C++
Dalam C++ percabangan digunakan untuk memecahkan persoalan dan mengambil
keputusan dari beberapa pernyataan. Ada dua jenis percabangan yang bisa kita
gunakan dalam pemrograman C++, yaitu sebagai berikut :
1. If
2. Switch
Dalam Percabangan baik
menggunakan If maupun Switch, pernyataan (statemen) yang terdapat dalam sebuah
block percabangan akan dieksekusi hanya
jika kondisi yang didefinisikan terpenuhi (Bernialai Benar), Arinya jika
kondisi tidak terpenuhi (bernilai salah) maka pernyataan (statemen)tersebut
tidak akan dieksekusi.
1.
If
Struktur If dapat dibagi menjadi:
¤ Struktur If satu kondisi
¤ Struktur if dua kondisi
¤ Struktur if tiga kondisi atau lebih
* Struktur If satu kondisi
Struktur ini merupakan struktur yang paling sederhana karena hanya
melibatkan satu buah kondisi yang akan diperiksa
Bentuk umum
//jika hanya terdapat satu
statemen, dapat ditulis sebagai berikut
if (kondisi) Statemen;
atau
if (kondisi)
Statemen;
//jika terdapat lebih dari
satu statemen
if (kondisi) {
Statemen1;
Statemen2;
…
}
* Struktur If dua kondisi
Struktur percabangan jenis ini sedikit lebih komplek jika dibandingkan
dengan struktur yang hanya memiliki satu buah kondisi, meskipun sebenarnya
konsepnya sangat sederhana, yaitu pada struktur jenis ini terdapat sebuah
statemen khusus yang berguna untuk mengatasi kejadian apabila kondisi yang
disefinisikan tersebut tidak terpenuhi (bernilai salah)
Bentuk umum
if (kondisi) {
//Statemen jika kondisi terpenuhi
Statemen1;
…
}
else {
//Statemen jika kondisi tidak terpenuhi
Statemen2;
…
}
* Struktur
If tiga kondisi
Percabangan jenis ini
merupakan perluasan dari struktur percabangan if sebelumnya, yaitu dengan
menyisipkan (menambahkan) satu atau lebih kondisi didalamnya
Bentuk umum
if (kondisi1) {
Statemen1; //merupakan statemen jika kondisi1 benar
}
else if (kondisi2) {
Statemen2; //merupakan statemen jika kondisi2 benar
}
else if (kondisi3) {
Statemen3; //merupakan statemen jika kondisi3 benar
}
…
else {
StatemenN; //merupakan statemen jika tidak ada kondisi
yang benar
}
* If
Bersarang
Percabangan jenis ini merupakan perluasan dari struktur percabangan if
sebelumnya, yaitu dengan menyisipkan (menambahkan) satu atau lebih percabangan
di sebuah percabangan
Bentuk umum
if (kondisi1) {
Statemen1; //merupakan statemen jika kondisi1 benar
if (kondisi1b) {
Statemen1b; //merupakan statemen jika
kondisi1b benar}
else {
Statemen1c; //merupakan statemen jika
kondisi1b tidak benar}}
else if (kondisi2) {
Statemen2; //merupakan statemen jika kondisi2 benar}
else {
StatemenN; //merupakan statemen jika tidak ada kondisi
yang benar}
2.
Switch
Selain mengunakan if, c++
juga menawarkan kepada kita untuk dapat melakukan percabangan (pemilihan)
menggunakan Switch
Bentuk umum
Switch (ekspresi){
case nilai_konstan1:
Statemen1;
break;
case nilai_konstan2:
Statemen2;
break;
case nilai_konstanN:
StatemenN;
break;
default:
StatemenAlternatif;
}
Penjelasan Bentuk umum
¤ Statemen break
digunakan sebagai statemen peloncatan agar keluar dari switch
¤ Statemen default
berguna untuk mengeksekusi statemen alternative yaitu jika niali yang
kita masukkan ternyata tidak sesuai dengan nilai konstanta yang didefinisikan
(dalam If menggunakan statemen “else”)
¤ Tipe data dari ekspresi
di slide sebelumnya harus berupa tipe ordinal, seperti bilangan bulat dan
karakter, selain tipe tersebut c++ tidak mengijinkan
B. Pengulangan dalam C++
Pengulangan adalah suatu proses yang melakukan statemen-statemen dalam
sebuah program secara terus-menerus sampai terdapat kondisi untuk
menghentikannya. Struktur pengulangan akan sangat membantu dalam efisiensi
program.
Dalam C++ terdapat 3 jenis
struktur pengulangan, yaitu :
¤ Struktur For
¤ Struktur While
¤ Struktur Do While
*Struktur
For
Struktur pengulangan jenis ini biasanya digunakan untuk melakukan
pengulangan yang telah diketahui banyaknya, pada umumnya perulangan for adalah
pengulangan yang paling mudah dipahami.
Bentuk
Umum dari struktur pengulangan For
//Untuk pengulangan yang
sifatnya menaik (increment), pastikan nialai awal < kondisi saat berjalan
For(variabel=niali_awal;
kondisi_saat_berjalan; variable++){
Statemen_yang_akan_diulang;
}
//Untuk pengulangan yang
sifatnya menurun (decrement), pastikan nialai awal > kondisi saat berjalan
For(variabel=niali_awal;
kondisi_saat_berjalan; variable--){
Statemen_yang_akan_diulang;
}
Contoh
#include <iostream>
using namespace std;
int main(){
int i, deret;
char h;
cout<<"\t\t===== Program Deret Huruf
=====\n\n";
cout<<"Berapa
banyak deret huruf yang akan ditampilkan : "; cin>>deret;
for(i=1,h='a';i<=deret;i++,h++){
cout<<"\nDeret Huruf No
"<<i<<"adalah huruf "<<h;
}
return 0;
}
*Struktur For
Bersarang
Konsep For bersarang
sebenarnya sederhana, yaitu dalam sebuah pengulangan terdapat pengulangan yang
lainnya
Bentuk Umum dari struktur
pengulangan For Bersarang
For(variabel1=niali_awal;
kondisi_saat_berjalan; variable1++){
For(variabel2=niali_awal; kondisi_saat_berjalan; variable2++){
For(variabel3=niali_awal;
kondisi_saat_berjalan; variable3++){
Statemen_yang_akan_diulang;
}
}
}
* Struktur
While
Struktur pengulangan jenis ini adalah pengulangan yang melakukan
pemeriksaan kondisi di awal blok struktur (berbeda dengan Do-While). Kita tahu
bahwa pengulangan hanya akan dilakukan jika kondisi yang didefinisikan di
dalamnya terpenuhi (bernilai benar).
Hal ini berarti jika kondisi yang didefinisikan tidak
terpenuhi (bernilai salah) maka statemen-statemen yang terdapat dalam blok
pengulangan pun tidak akan pernah dieksekusi oleh program
Bentuk Umum dari struktur pengulangan while
while (kondisi) {
Statemen_yang_akan_diulang;
}
//contoh while bersarang (konsep sama dengan For Bersarang)
while (kondisi) {
while (kondisi) {
Statemen_yang_akan_diulang;
}
}
Contoh Program dengan While
int main(){
int i, deret;
char h;
cout<<"\t\t=====
Program Deret Angka =====\n\n";
cout<<"Berapa
banyak deret Angka yang akan ditampilkan : "; cin>>deret;
i=0;
while (i<=deret) {
cout<<i<<" ";
i++;
//statemen ini berguna untuk menaikkan nilai i
(i = i + 1)
}
cout<<"\n\n===
Deret Selesai Ditampilkan ===\n\n";
return 0;
}
* Struktur
Do-While
Berbeda dengan struktur While yang melakukan
pemeriksaan kondisi di awal blok perulangan, pada struktur Do-While kondisi
justru ditempatkan di bagian akhir, hal ini menyebabkan struktur perulangan ini
pasti akan melakukan satu kali proses
(eksekusi statemen) walaupun kondisi yang didefinisikan tidak terpenuhi
(bernilai salah)
Bentuk Umum dari struktur pengulangan while
do {
Statemen_yang_akan_diulang;
} while (kondisi)
//contoh Do-While bersarang (konsep sama dengan For Bersarang)
do {
do {
Statemen_yang_akan_diulang;
} while (kondisi)
} while (kondisi)
Contoh Program dengan Do-While
int main(){
int i, deret;
char h;
cout<<"\t\t=====
Program Deret Angka =====\n\n";
cout<<"Berapa
banyak deret Angka yang akan ditampilkan : "; cin>>deret;
i=0;
while (i<=deret) {
cout<<i<<" ";
i++;
//statemen ini berguna untuk menaikkan nilai i
(i = i + 1)
}
cout<<"\n\n===
Deret Selesai Ditampilkan ===\n\n";
return 0;
}