Pengertian Perintah CONTINUE Dalam Bahasa C
Pengertian Perintah CONTINUE Dalam Bahasa C
#include <iostream>
using namespace std;
int main()
{
int i;
for (i = 1; i <= 10; i++) {
cout << i << " + " << i << " = " << (i+i) << endl;
}
return 0;
}
Hasil kode program:
1 + 1 = 2
2 + 2 = 4
3 + 3 = 6
4 + 4 = 8
5 + 5 = 10
6 + 6 = 12
7 + 7 = 14
8 + 8 = 16
9 + 9 = 18
10 + 10 = 20
Di sini saya menggunakan perulangan FOR untuk membuat daftar penambahan 1
+ 1, 2 + 2, dst hingga 10 + 10.
Sekarang kita akan tambah dengan perintah CONTINUE:
#include <iostream>
using namespace std;
int main()
{
int i;
for (i = 1; i <= 10; i++) {
if (i == 5) {
continue;
}
cout << i << " + " << i << " = " << (i+i) << endl;
}
return 0;
}
Hasil kode program:
1 + 1 = 2
2 + 2 = 4
3 + 3 = 6
4 + 4 = 8
6 + 6 = 12
7 + 7 = 14
8 + 8 = 16
9 + 9 = 18
10 + 10 = 20
Di dalam kode program, pada baris 9 terdapat kondisi if (i == 5) { continue; }. Kondisi
ini akan terpenuhi saat variabel counter i berisi angka 5. Hasilnya, perintah cout di
baris 12 akan dilompati dan perulangan langsung pindah ke iterasi berikutnya,
yakni variabel i akan berisi angka 6. Dalam tampilan akhir bisa terlihat baris 5 + 5 =
10 tidak ada di daftar penambahan.
Selanjutnya, bisakah anda coba jelaskan kenapa perintah continue tidak berefek
pada kode program berikut?
#include <iostream>
using namespace std;
int main()
{
int i;
for (i = 1; i <= 10; i++) {
cout << i << " + " << i << " = " << (i+i) << endl;
if (i == 5) {
continue;
}
}
return 0;
}
Hasil kode program:
1 + 1 = 2
2 + 2 = 4
3 + 3 = 6
4 + 4 = 8
5 + 5 = 10
6 + 6 = 12
7 + 7 = 14
8 + 8 = 16
9 + 9 = 18
10 + 10 = 20
Pertanyaannya, kenapa baris 5 + 5 = 10 masih tampil? padahal saya membuat
kondisi if (i == 5) {continue; } di baris 10.
Kembali, logika yang sama seperti pada perulangan BREAK juga berlaku di sini.
Dalam kode di atas, perintah cout di tulis sebelum perintah continue. Akibatnya,
meskipun perintah continue dijalankan saat i bernilai 5 (dan kondisi ini terpenuhi),
namun perintah cout sudah terlanjur di proses terlebih dahulu.
Ini menjadi catatan penting saat merancang kode program yang melibatkan
perintah continue, karena posisi peletakan perintah sangat berpengaruh ke hasil
akhir.
Sebagai tambahan, berikut contoh kode program perintah continue dalam
perulangan DO WHILE:
#include <iostream>
using namespace std;
int main()
{
int i = 0;
do {
i++;
if (i == 5) {
continue;
}
cout << i << " + " << i << " = " << (i+i) << endl;
} while (i < 10);
return 0;
}
Hasil kode program:
1 + 1 = 2
2 + 2 = 4
3 + 3 = 6
4 + 4 = 8
6 + 6 = 12
7 + 7 = 14
8 + 8 = 16
9 + 9 = 18
10 + 10 = 20
Ketika membuat perintah CONTINUE dengan perulangan DO WHILE dan juga
perulangan WHILE, posisi peletakan perintah increment sangat berpengaruh.
Contoh kasus, tanpa menjalankan kode program dibawah ini bisakah anda
menebak hasilnya?
#include <iostream>
using namespace std;
int main()
{
int i = 0;
do {
if (i == 5) {
continue;
}
cout << i << " + " << i << " = " << (i+i) << endl;
i++;
} while (i < 10);
return 0;
}
Hasilnya sebuah infinity loop!, yakni perulangan yang tidak pernah berakhir.
Ini terjadi karena pada saat variabel i berisi angka 5, perulangan akan terus
berputar-putar antara baris 9 – 11. Perintah increment i++ yang ada di baris 13
tidak bisa di eksekusi karena di tulis setelah perintah continue di baris 10.
Jadi, kata kuncinya adalah: perhatikan logika program terutama ketika membuat
perulangan WHILE dan DO WHILE yang melibatkan perintah continue.
Sekedar catatan, jika anda menjalankan kode diatas, akan tampil hasil berikut:
0 + 0 = 0
1 + 1 = 2
2 + 2 = 4
3 + 3 = 6
4 + 4 = 8
Setelah itu tampil baris kosong yang sebenarnya berupa infinity loop karena
perintah cout dan increment i++ di tulis setelah perintah continue.
Dalam lanjutan tutorial bahasa C++ di duniailkom kali ini kita telah membahas
tentang perintah CONTINUE. Tutorial ini menutup seri bahasan struktur kondisi
dan perulangan di dalam bahasa C++.
Untuk sesi berikutnya kita akan masuk ke pembahasan mengenai function, yang
dimulai dengan