Anda di halaman 1dari 24

PERCABANGAN

DAN PERULANGAN PADA C++


• IF
• IF … ELSE ….
• ELSE … IF
• SWITCH … CASE
• STATEMENT FOR, WHILE DO…WHILE

2
• Sebuah pernyataan C++ sederhana adalah setiap instruksi individual dari sebuah
program, seperti deklarasi variabel dan ekspresi. Mereka selalu diakhiri dengan
titik koma (;), dan dieksekusi dalam urutan yang sama di mana mereka muncul
dalam sebuah program.

• Tapi program tidak terbatas pada urutan linear pernyataan. Selama proses
tersebut, program dapat mengulang segmen kode, atau mengambil keputusan dan
membagi dalam dua cabang. Untuk itu, C++ menyediakan pernyataan
pengendalian alur yang berfungsi untuk menentukan apa yang harus dilakukan
dengan program, kapan, dan dalam keadaan apa.

3
Pernyataan IF
Kata kunci if digunakan mengeksekusi pernyataan atau blok, jika dan
hanya jika, kondisi terpenuhi.
Sintaks-nya adalah:
if (condition) statement

4
Di sini, kondisi adalah ekspresi yang sedang dievaluasi. Jika kondisi benar,
pernyataan dieksekusi. Jika kondisi salah,
salah pernyataan tidak dijalankan, dan
program dilanjutkan tepat setelah seluruh pernyataan seleksi.

Sebagai contoh, potongan kode berikut mencetak pesan (x is 100), hanya jika
nilai yang disimpan dalam variabel x memang 100:
if (x == 100) cout << "x is 100"";

Jika x tidak tepat 100, pernyataan ini diabaikan,


diabaikan dan tidak ada yang dicetak.

5
Jika ingin memasukkan lebih dari satu pernyataan untuk dieksekusi ketika kondisi
terpenuhi, pernyataan harus diapit oleh kurung ({}), membentuk blok:
if (x == 100)
{
cout << "x is ";
cout << x;
}

6
Pernyataan If dan Else
Pernyataan seleksi dengan if juga dapat menentukan apa yang terjadi
ketika kondisi tidak terpenuhi, dengan menggunakan kata kunci else
untuk memperkenalkan pernyataan alternatif.
alternatif Sintaks-nya adalah:
if (condition) statement1 else statement2
dimana statement1 dieksekusi dalam kasus kondisi benar, dan jika kondisi
salah, statement2 yang dieksekusi.

7
Sebagai contoh
if (x == 100)
cout << "x is 100"; Contoh 2:
else if (x > 0)
cout <<"x is not 100"; cout << "x is positive";
else if(x < 0)
Ini mencetak x is 100, jika memang x cout << "x is negative";
memiliki nilai 100, tetapi jika tidak, ia else
akan mencetak is not 100 sebagai
gantinya. cout << "x is 0"

8
Pernyataan Iteration (loops)
Loops mengulangi pernyataan sejumlah kali atau saat kondisi terpenuhi. Mereka
diperkenalkan oleh kata kunci while, do, dan for.

• While loop
Jenis loop paling sederhana adalah whileloop.
whileloop Sintaks-nya adalah:
While (expression) statement
Whileloop hanya mengulangi pernyataan sementara ekspresi benar. Jika, setelah
setiap pelaksanaan pernyataan, ekspresi tidak lagi benar, loop berakhir, dan program
dilanjutkan tepat setelah loop.
9
CONTOH:
// custom countdown using while
#include <iostream>
using namespace std;
int main ()
{
int n = 10;
while(n>0)
{
cout << n << ", ";
--n;
}
cout << "liftoff!\n";
} 10
Do-While
While Loop
Sebuah loop yang sangat mirip adalah loop do-while, yang sintaksnya adalah:

Do statement while (condition);

Sifat do while loop seperti while-loop, kecuali condition dievaluasi setelah eksekusi
pernyataan bukan sebelumnya, menjamin setidaknya satu eksekusi pernyataan,
bahkan jika kondisi tidak pernah terpenuhi.
terpenuhi

11
Contoh
// echo machine // echo machine
#include <iostream> #include <iostream>
<
#include <string> #include <string>
using namespace std; using namespace std;
int main () int main ()
{ string str; { string str;
do str = “goodbye”;
{ cout << "Enter text: "; while( != "goodbye");
while(str
getline (cin str); { cout <<"Enter text:";
cout << "You entered: " << str getline (cin,str);
<< '\n'; cout << "You entered: " << str << '\n';
} }
while(str != "goodbye"); } 12
}
• do-while loop biasanya lebih disukai dibandingkan while-loop ketika pernyataan
harus dijalankan minimal sekali. Dalam contoh sebelumnya, input pengguna
dalam blok inilah yang akan menentukan apakah loopberakhir. Dan dengan
demikian, bahkan jika pengguna ingin mengakhiri loop sesegera mungkin dengan
memasukkan goodbye, blok dalam loop perlu dijalankan minimal sekali untuk
meminta masukan.

13
For Loop
For loop dirancang untuk perulangan beberapa kali.
Sintaks-nya adalah:
for(initialization; condition; increase) statement;
• Loop ini mengulangi pernyataan ketika kondisi benar. Tapi, di samping itu, for
loop menyediakan lokasi khusus untuk inisialisasi dan ekspresi penambahan,
dieksekusi baik sebelum loop dimulai pertama kalinya, maupun setelah setiap
perulangan. Oleh karena itu, penggunaan variabel counter sebagai kondisi sangat
berguna.

14
Cara Kerja For Loop :
1. Inisialisasi dijalankan. Umumnya, ini menyatakan sebuah variabel counter, dan
set ke beberapa nilai awal. Ini dilaksanakan satu waktu, pada awal loop.
2. Kondisi diperiksa. Jika benar, loop terus, jika tidak, loop berakhir, dan
pernyataan dilewati, akan langsung ke langkah 5.
3. Pernyataan dieksekusi. Ia dapat berupa pernyataan tunggal atau blok diapit
dalam kurung kurawal {}.
4. Kenaikan dijalankan, dan loop akan kembali ke langkah 2.
5. Loop berakhir: eksekusi berlanjut dengan pernyataan berikutnya setelah for
loop.

15
// countdown using a for loop For (int n=0, i=100 ; n!=i ; ++n –i)
#include <iostream> {
using namespace std; // whatever here...
int main () }
{ for(int n=10; n>0; n--)
{ • Loop ini akan mengeksekusi 50 kali, jika
cout << n << ", "; tidak n atau i dimodifikasi dalam loop:
}
cout << "liftoff!\n";
}
16
Jump Statements
Pernyataan lompatan memungkinkan mengubah aliran program dengan melakukan
lompatan ke lokasi tertentu.

• break statement
Hal ini dapat digunakan untuk mengakhiri infinite loop, atau untuk memaksa
berakhir sebelum berakhir secara alami.

17
// break loop example
#include <iostream>
Using namespace std;
int main ()
{
for(int n=10; n>0; n--)
{ cout << n << ", ";
if (n==3)
{ cout << "countdown aborted!";
break;
}
}
}
18
// continue loop example
• continue statement #include <iostream>
Pernyataan continue Using namespace std;
menyebabkan program untuk int main ()
melewati sisa dari loop dalam {
iterasi saat ini, seolah-olah ujung for(int n=10; n>0; n--)
{
blok pernyataan telah dicapai, if (5)ti if (n==5) continue;
menyebabkan ia melompat ke cout << n << ", ";
awal iterasi berikut. }
cout << "liftoff!\n";
}

19
• goto statement // goto loop example
#include <iostream>
goto memungkinkan untuk
using namespace std;;
membuat lompatan mutlak ke int main ()
titik lain dalam program. Titik {
tujuan diidentifikasi dengan int n=10;
label, yang kemudian digunakan mylabel:
sebagai argumen untuk cout << n << ", ";
pernyataan goto. Sebuah label n ; n--;
if (n>0)
terbuat dari pengenal yang sah
goto mylabel;
diikuti dengan titik dua (:). cout << "liftoff!\n";
} 20
Switch
Pernyataan seleksi lain: switch. BENTUK UMUM:
switch (expression)
Sintaks dari pernyataan switch agak { case constant1:
khas. Tujuannya adalah untuk group-of-statements-1;
memeriksa nilai antara sejumlah break;
ekspresi konstanta yang mungkin. case constant2:
Switch mirip dengan pernyataan if- group-of-statements-2;
break;
else, tetapi terbatas pada ekspresi
.
konstanta. .
.
default:
default-group-of-statements
} 21
Cara Kerja Switch:
• switch mengevaluasi ekspresi dan memeriksa apakah itu setara dengan constant1,
jika iya, dijalankan group-of-statements
statements-1 sampai menemukan pernyataan break.
Ketika ditemukan pernyataan break, program melompat ke ujung seluruh
pernyataan switch.
• Jika ekspresi tidak sama dengan constant1,
constant program kemudian diperiksa terhadap
constant2. Jika sama dengan ini, dijalankan group-of-statements-2; sampai break
ditemukan. Ketika ia menemukan pernyataan break, program melompat ke ujung
seluruh pernyataan switch.
• Terakhir, jika nilai ekspresi tidak dapat ditemukan pada konstanta yang
ditentukan sebelumnya, program mengeksekusi pernyataan yang disertakan
setelah default: label, jika ada (karena itu adalah opsional).

22
23
….SEE YOU NEXT WEEK

Lilis Setyowati

24

Anda mungkin juga menyukai