Perulangan Minggu ke10 Imam Fahrur Rozi KOMPETENSI v

  • Slides: 23
Download presentation
Perulangan Minggu ke-10 Imam Fahrur Rozi

Perulangan Minggu ke-10 Imam Fahrur Rozi

KOMPETENSI v Memahami kapan pengulangan digunakan dalam program v Memahami tentang konsep pengulangan v

KOMPETENSI v Memahami kapan pengulangan digunakan dalam program v Memahami tentang konsep pengulangan v Menguasai cara mengimplementasikan konsep pengulangan dalam program menggunakan C++

PENGULANGAN ² Pengulangan dilakukan untuk mengulang satu atau beberapa statement, sebanyak n kali atau

PENGULANGAN ² Pengulangan dilakukan untuk mengulang satu atau beberapa statement, sebanyak n kali atau selama kondisi yang menjadi syarat pengulangan terpenuhi. ² Karakteristik pengulangan” ² Ada kondisi awal atau titik awal pengulangan ² Ada syarat pengulangan. Jika syarat tersebut masih terpenuhi, maka pengulangan masih akan terus berjalan. Pengulangan berhenti saat syarat tersebut sudah tidak terpenuhi ² Ada step atau tahap pengulangan

PENGULANGAN ² Dalam C++ terdapat 3 metode untuk mengimplementasikan pengulangan: ² while() {……} ²

PENGULANGAN ² Dalam C++ terdapat 3 metode untuk mengimplementasikan pengulangan: ² while() {……} ² do{……. . }while() ² for(){……. . }

WHILE ² Format while(boolean expression) statement; atau while(boolean expression){ statement; }

WHILE ² Format while(boolean expression) statement; atau while(boolean expression){ statement; }

WHILE - Contoh #include <stdio. h> int main () { int n; printf("Enter the

WHILE - Contoh #include <stdio. h> int main () { int n; printf("Enter the starting number = ”); scanf(“%i”, &n); while (n>0) { printf(“%i , ”, n); n--; } printf(”FIRE…!!!”); return 0; } 1. Nilai n mendapat masukan dari user 2. Dilakukan pengecekan untk syarat atau kondisi while yaitu n>0. Dari hasil pengecekan ini ada 2 kemungkinan hasil yaitu: – True : akan dilanjutkan ke tahap 3 – False : akan dilanjutkan ke tahap 5 3. Eksekusi statement: cout<<n<<“, ”; dan - - n; 4. Akhir blok perulangan dan kembali ke tahap 2 5. Keluar dari blokp erulangan dan cetak “FIRE”

WHILE ² Kondisi awal perulangan tersebut adalah nilai n yang dimasukkan oleh user. ²

WHILE ² Kondisi awal perulangan tersebut adalah nilai n yang dimasukkan oleh user. ² Perulangan akan terus berjalan jika kondisi n>0 masih terpenuhi atau true. ² Agar perulangan berhenti pada suatu saat tertentu, maka diperlukan step perulangan. Step perulangan ini yang pada saat tertentu akan mengakibatkan syarat perulangan menjadi false dan perulangan berhenti. Pada contoh adalah --n. ² Misal awalnya nilai n yang dimasukkan adalah 10, maka setiap kali perulangan --n akan menyebabkan nilai n berkurang satu setiap kali berulang. Hingga suatu saat n nilainya 0 dan perulangan berakhir.

WHILE Karakteristik while() adalah: 1. Dilakukan pengecekan kondisi terlebih dahulu sebelum dilakukan perulangan. Jika

WHILE Karakteristik while() adalah: 1. Dilakukan pengecekan kondisi terlebih dahulu sebelum dilakukan perulangan. Jika kondisi yang dicek bernilai benar (true) maka perulangan akan dilakukan. 2. Blok statement tidak harus ada. Struktur tanpa statement akan tetap dilakukan selama kondisi masih true.

FOR Format penulisan for: for(inisialisasi; kondisi_perulangan; step_perulangan) statement; atau: for(inisialisasi; kondisi_perulangan; step_perulangan){ statement; }

FOR Format penulisan for: for(inisialisasi; kondisi_perulangan; step_perulangan) statement; atau: for(inisialisasi; kondisi_perulangan; step_perulangan){ statement; }

FOR for(inisialisasi; kondisi_perulangan; step_perulangan) statement; Cara kerja 1. Inisialisasi dieksekusi. Biasanya digunakan untuk memberikan

FOR for(inisialisasi; kondisi_perulangan; step_perulangan) statement; Cara kerja 1. Inisialisasi dieksekusi. Biasanya digunakan untuk memberikan nilai awal variabel yang digunakan sbg counter perulangan. Inisialisasi hanya dieksekusi 1 kali saja 2. Kondisi dicek. Jika benar, maka ke tahap 3. Jika salah akan keluar dari blok perulangan (tahap 5) 3. Masuk ke blok perulangan dan statement 2 yag ada ddi dalamnya akan dieksekusi 4. Step perulangan dieksekusi, dan akan kembali ke tahap 2 5. Keluar dari perulangan

FOR - Contoh #include <stdio. h> int main () { for (int n=10; n>0;

FOR - Contoh #include <stdio. h> int main () { for (int n=10; n>0; n--) { printf(“%i , ”, n); } printf("FIRE!n”); return 0; }

FOR Ekspresi inisialisasi dan ekspresi step perulangan bersifat opsional (boleh tidak ada). Meski demikian,

FOR Ekspresi inisialisasi dan ekspresi step perulangan bersifat opsional (boleh tidak ada). Meski demikian, tanda ; (semicolon) yang memisahkan antar ekspresi dalam for harus tetap ada Contoh: O for(; n<10; ) : jika menghendaki tidak ada inisialisasi dan step perulangan O for(; n<10; n++) : jika menghendaki tidak ada inisialisasi, mungkin inisialisasi sudah dilakukan sebelumnya, misal int n = 0; for(; n<10; n++){ …. . }

FOR Dalam for juga memungkinkan untuk menuliskan lebih dari satu proses inisialisasi atau lebih

FOR Dalam for juga memungkinkan untuk menuliskan lebih dari satu proses inisialisasi atau lebih dari satu step perulangan, yaitu dengan menggunakan tanda koma (, ) Loop akan berulang Contoh: 50 kali for ( n=0, i=100 ; n!=i ; n++, i-- ) { …. . }

KESETARAAN FOR DAN WHILE

KESETARAAN FOR DAN WHILE

DO-WHILE Format penulisan do-while: do statement; while(boolean expression); atau: do{ statement; }while(boolean expression); •

DO-WHILE Format penulisan do-while: do statement; while(boolean expression); atau: do{ statement; }while(boolean expression); • Statement dijalankan dulu • Pengecekan kondisi perulangan dilakukan di akhir blok perulangan. • Selama kondisi bernilai true, maka akan perulangan akan kembali dilakukan

DO-WHILE #include <stdio. h> int main () { int n; printf("Enter the starting number

DO-WHILE #include <stdio. h> int main () { int n; printf("Enter the starting number = ”); scanf(“%i”, &n); do { printf(“%i , ”, n); --n; } while (n>0) ; printf("FIRE!n”); return 0; }

DO-WHILE • Pada pengulangan while, statement atau block statement mungkin tidak akan pernah dilaksanakan

DO-WHILE • Pada pengulangan while, statement atau block statement mungkin tidak akan pernah dilaksanakan bila nilai ekspresi boolen false, karena operasi pengulangan diawali dengan mengeksekusi ekspresi boolean. • Pada pengulangan do-while statement atau block statement pasti dikerjakan minimal satu kali, karena ekspresi boolean baru diuji pada akhir blok pengulangan.

LOOP BERSARANG – NESTED LOOP Cond ition 1 false true Cond ition 2 true

LOOP BERSARANG – NESTED LOOP Cond ition 1 false true Cond ition 2 true Body false • Mirip seperti NESTED IF • Loop yang ada di dalam Loop yang lain.

LOOP BERSARANG – NESTED LOOP #include <stdio. h> int main(){ int x; x=5; for(int

LOOP BERSARANG – NESTED LOOP #include <stdio. h> int main(){ int x; x=5; for(int i=1; i<=x; i++){ for(int j=1; j<=i; j++){ printf(“*”); } printf(“n”); } } * ** *****

BREAK • Sintaks break; digunakan untuk keluar dari blok perulangan for, while ataupun do-while,

BREAK • Sintaks break; digunakan untuk keluar dari blok perulangan for, while ataupun do-while, atau juga blok switch yang sudah dibahas pada pertemuan sebelumnya.

BREAK #include <stdio. h> int main () 10, 9, 8, 7, 6, 5, 4,

BREAK #include <stdio. h> int main () 10, 9, 8, 7, 6, 5, 4, 3, countdown aborted! { int n; for (n=10; n>0; n--) { printf(“%i , ”, n); if (n==3) { printf("countdown aborted!”); break; } } return 0; }

CONTINUE • Sintaks continue; digunakan untuk melanjutkan ke tahap perulangan berikutnya, dan tinggalkan sisa

CONTINUE • Sintaks continue; digunakan untuk melanjutkan ke tahap perulangan berikutnya, dan tinggalkan sisa instruksi lain yang ada di dalam blok perulangan

CONTINUE #include <stdio. h> int main () { for (int n=10; n>0; n--) {

CONTINUE #include <stdio. h> int main () { for (int n=10; n>0; n--) { if (n==5) continue; printf(“%i , ”, n); } printf("FIRE!n”); return 0; } 10, 9, 8, 7, 6, 4, 3, 2, 1, FIRE!