Anda di halaman 1dari 17

Pengulangan Loop While, do-while, switch-break

While
Suatu bentuk pengulangan yang mirip dengan for, tetapi dengan bentuk yang lebih sederhana Pengulangan akan terus dilakukan selama syarat terpenuhi, dan akan dihentikan bila syarat tidak terpenuhi lagi. Syarat pengulangan dapat berupa ekspresi relasional dan ekspresi logik

Bentuk pernyataan while


While dengan satu perintah
While(syarat) pernyataan/perintah;

While dengan lebih dari satu perintah


While(syarat) { pernyataan/perintah; pernyataan/perintah; pernyataan/perintah; }

for (inisialisasi;syarat pengulangan;peubah nilai pencacah) { pernyataan/perintah; pernyataan/perintah; }


Inisialisasi While (syarat pengulangan) { pernyataan/perintah; pernyataan/perintah; peubah nilai pencacah;

#include <conio.h> #include <stdio.h> int main() { int bil=1, total=0; while (bil<=10) { total += bil; printf("\n%10d %10d",bil,total); bil++; } getche(); return 0; }

Catatan
Harus sertakan inisialisasi pencacah pada penggunaan while. Pada pernyataan while, tidak ada bagian yang mengatur inisialisasi pencacah. Jangan lupa untuk membuat peubah nilai pencacah, bila tidak maka pengulangan terjadi tak terhingga.

#include <conio.h> #include <stdio.h> int main() { char kar; printf("\nGame tebak karakter"); printf("\nCarilah karakter untuk menghentikan pengulangan ini"); printf ("\n\n Ketikkan satu karakter antara a-z : "); while (kar=getche() != 'm') { printf("\n Jawaban Anda kurang tepat"); printf("Coba input lagi, yang semangat \n"); } getche(); return 0; }

Do-while
Statemen perulangannya dilakukan terlebih dahulu baru kemudian di cek syaratnya. Sedangkan While, syarat pengulangan dilakukan di awal loop baru perulangannya dijalankan. do { Pernyataan/perintah; Pernyataan/perintah; } While(syarat pengulangan);

Perbedaan while & do-while


While Mengecek kondisi dulu baru menjalankan statement perulangannya Dimungkinkan perulangan tidak pernah terjadi, yaitu ketika kondisinya langsung bernilai FALSE Do-while Melakukan perulangan terlebih dahulu baru kemudaian di cek kondisinya Minimal terdapat 1 kali perulangan

#include <conio.h> #include <stdio.h> int main() { int bil=1, total=0; printf("\nmencetak bilangan bulat dan total"); do { total += bil; printf("\n%10d %10d",bil,total); bil++; } while (bil<=10); getche(); return 0; }

Switch - break
Hampir sama dengan if-elsel, tetapi penerapannya lebih sempit Khusus hanya bisa memeriksa data bertipe integer atau karakter Berguna untuk menyelesaikan program yang memiliki banyak cabang atau alternatif

Bentuk penulisan switch-break


Switch (variabel integer atau karakter) { case nilai pertama variabel: Perintah; Perintah; break; case nilai pertama variabel: Perintah; Perintah; break; default: Perintah; Perintah; }

Catatan
Switch hanya bisa memeriksa persamaan dengan sebuah konstanta, tidak seperti if yang dapat memeriksa syarat-syarat lain (lebih besar, lebih kecil, dll) Tidak ada dua konstanta yang sama didalam sebuah switch Pernyataan switch lebih baik dari pada tangga if-else-if Setiap cabang akan dijalankan bila syarat terpenuhi Nilai default akan dijalankan bila semua cabang tidak terpenuhi. Break digunakan untuk menghentikan cabang yang dijalankan, bila tidak program akan diteruskan ke cabang-cabang selanjutnya

#include <conio.h> #include <stdio.h> int main() { int angka; printf ("\n masukkan angka antara 1-5 : "); scanf ("%d",&angka); switch(angka) { case 1 : printf ("\n Anda mengetikkan angka satu"); break; case 2 : printf ("\n Anda mengetikkan angka dua"); break; case 3 :

printf ("\n Anda mengetikkan angka tiga"); break; case 4 : printf ("\n Anda mengetikkan angka empat"); break; case 5 : printf ("\n Anda mengetikkan angka lima"); break; default : printf ("\n Maaf, angka yang Anda masukkan salah"); } getche(); return 0; }

Break dan Countinue


Break
Berfungsi untuk menghentikan loop dan berlanjut ke perintah selanjutnya

Countinue
Berfungsi untuk mengembalikan proses yang sedang dilaksanakan ke awal loop lagi, tanpa menjalankan sisa perintah dalam loop tersebut

#include <conio.h> #include <stdio.h> int main() { int i; for (i=1;i<=10;i++) { if(i==6) break; printf("%5d",i); } printf("\n akhir pengulangan"); getche(); return 0; } *) ganti break dengan continue, amati apa yang terjadi

Anda mungkin juga menyukai