Break dan Continue.

Ada dua statement yang khusus untuk digunakan di dalam perulangan. Statement-statement tersebut adalah break dan continue. Kali ini, saya akan membahas cara penggunaan dua statement tersebut.

Break

Sebelumnya, kalian mungkin sudah mempelajari penggunaan break di dalam switch. Break digunakan untuk keluar dari lingkup compound statement yang dimiliki switch. Hal yang sama juga bisa dilakukan di dalam perulangan. Kalian bisa menghentikan perulangan sebelum kondisi di dalam perulangan terpenuhi dengan menggunakan break. Break biasanya dipasangkan dengan if. Salah satu kegunaannya adalah untuk meminta input berulang kali seperti di bawah ini.

#include <iostream>

using namespace std;

int main(){
    char inputku;
    cout << "Ketik n untuk berhenti" << endl;
    
    while(1){
        cin >> inputku;
        if(inputku=='n')break;
        cout << "____" << endl;
    }
    cout << "====" << endl;
    cout << "selesai" << endl;
    return 0;
}
Contoh Program :
Ketik n untuk berhenti
Ketik n untuk berhenti
a
____
v
____
y
____
n
====
selesai

Jika tidak ada break, perulangan tidak akan berhenti. Tapi, karena ada break dan if, saat kondisi di dalam if terpenuhi, perulangan akan dihentikan. Program yang dihasilkan kode di atas akan berhenti setelah user memberikan 'n' sebagai input yang akan disimpan dalam variabel inputku.

Saat keluar dari break, semua statement di bawah break akan dilewati hingga keluar dari lingkup perulangan, dan lanjut ke statement di bawah perulangan. Break hanya keluar dari lingkup terkecil. Kalian tidak bisa menggunakan break untuk keluar dari 2 perulangan sekaligus di dalam compound statement. Selain menggunakan break, kalian sebenarnya bisa mengubah nilai variabel jika tujuannya hanya untuk berhenti dari perulangan.

Continue

Seperti artinya, continue digunakan untuk melanjutkan perulangan. Tapi, continue tidak hanya akan melanjutkan perulangan. Continue akan melanjutkan perulangan dengan melewatkan beberapa baris di bawahnya.

#include <iostream>

using namespace std;
int main(int argc, char *argv[]){
    for(int i=0;i<5;i++){
	    cout << endl << "i=" << i;
	    if(i%2==0)continue;
	    cout << "====tidak ada continue";
    }
    
    cout << endl << "____" << endl;
    cout << "selesai" << endl;
    return 0;
}
Contoh Program :
i=0
i=1====tidak ada continue
i=2
i=3====tidak ada continue
i=4
____
selesai

Contoh di atas menggunakan continue setiap i bernilai genap. Itu bisa dilihat dari syarat "i%2==0" di dalam kondisi yang digunakan if. Hasilnya, setiap baris yang mencetak i dengan nilai genap akan melewatkan beberapa statement sehingga outputnya terlihat selang seling.