Perulangan While Bersarang (Nested While) di C++: Cara Kerja dan Contoh Program
Pemrograman adalah tentang memecahkan masalah, dan salah satu alat yang paling penting dalam kotak alat pemrogram adalah perulangan. Bahasa pemrograman C++ menyediakan beberapa jenis perulangan, salah satunya perulangan while. Dalam artikel ini, kita akan membahas sebuah konsep lanjutan dari perulangan while, yaitu Perulangan While Bersarang di C++. Kami akan menjelaskan cara kerjanya, keuntungan serta kekurangannya, dan tentu saja, memberikan contoh program untuk membantu Anda memahaminya lebih baik.
Perulangan While Bersarang (Nested While) di C++ |
Pengertian Perulangan While Bersarang
Perulangan while bersarang, atau yang lebih dikenal sebagai Nested While dalam bahasa Inggris, adalah sebuah konstruk dimana sebuah perulangan while diletakkan di dalam perulangan while lainnya. Ini memungkinkan programmer untuk menjalankan sekelompok instruksi beberapa kali, dan itu sendiri bisa menjadi sekelompok instruksi yang diulang beberapa kali.
Contoh Sederhana
int i = 0;while (i < 3) {int j = 0;while (j < 3) {// Kode di sini akan dieksekusi 9 kalij++;}i++;}
Dalam contoh di atas, perulangan while dalam (inner while) akan menyelesaikan siklusnya sebelum kembali ke perulangan while luar (outer while).
Cara Kerja Perulangan While Bersarang
Perulangan while pertama (luar) akan memeriksa kondisinya. Jika kondisi tersebut terpenuhi, maka perulangan akan memasuki blok kodenya dan menjalankan perulangan while dalam. Perulangan while dalam ini akan melaksanakan siklusnya sepenuhnya sebelum mengembalikan kontrol ke perulangan while luar. Proses ini akan berulang sampai kondisi dari perulangan while luar tidak lagi terpenuhi.
Contoh Program While Bersarang di C++
Berikut beberapa contoh sederhana yang menunjukkan bagaimana Perulangan While Bersarang di C++:
Contoh 1: Mencetak Segitiga Terbalik
Salah satu aplikasi dari Perulangan While Bersarang di C++ adalah untuk mencetak pola-pola pada layar. Mari kita lihat sebuah contoh sederhana di mana kita akan menggunakan nested while loop untuk mencetak sebuah segitiga terbalik.
#include <iostream>using namespace std;int main() {int i = 5; // Inisialisasi variabel i dengan nilai 5while (i > 0) { // Loop luar akan berjalan selama i > 0int j = i; // Set variabel j sama dengan i untuk loop dalamwhile (j > 0) { // Loop dalam akan berjalan selama j > 0cout << "*"; // Cetak bintangj--; // Kurangi nilai j sebanyak 1}cout << endl; // Cetak baris baru setelah satu baris bintang selesaii--; // Kurangi nilai i sebanyak 1}return 0; // Keluar dari program}
Output
***************
Di sini, perulangan while luar mengontrol jumlah baris yang dicetak, sedangkan perulangan while dalam mengontrol jumlah bintang dalam setiap baris. Jadi, pada iterasi pertama dari perulangan luar, perulangan dalam akan mencetak 5 bintang. Pada iterasi kedua, perulangan dalam akan mencetak 4 bintang, dan seterusnya.
Contoh 2: Mencetak Tabel Perkalian
Kita juga bisa menggunakan Perulangan While Bersarang di C++ untuk mencetak tabel perkalian dari 1 hingga 10.
#include <iostream>using namespace std;int main() {int i = 1; // Inisialisasi variabel i dengan nilai 1while (i <= 10) { // Loop luar akan berjalan dari 1 hingga 10int j = 1; // Inisialisasi variabel j dengan nilai 1while (j <= 10) { // Loop dalam akan berjalan dari 1 hingga 10cout << i * j << "\t"; // Cetak hasil perkalian i dan j, diikuti dengan tabj++; // Tambahkan nilai j sebanyak 1}cout << endl; // Cetak baris baru setelah satu baris tabel selesaii++; // Tambahkan nilai i sebanyak 1}return 0; // Keluar dari program}
Output
1 2 3 4 5 6 7 8 9 102 4 6 8 10 12 14 16 18 203 6 9 12 15 18 21 24 27 304 8 12 16 20 24 28 32 36 405 10 15 20 25 30 35 40 45 506 12 18 24 30 36 42 48 54 607 14 21 28 35 42 49 56 63 708 16 24 32 40 48 56 64 72 809 18 27 36 45 54 63 72 81 9010 20 30 40 50 60 70 80 90 100
Di contoh ini, perulangan while luar berfungsi untuk mengontrol faktor perkalian pertama (i), sedangkan perulangan while dalam berfungsi untuk mengontrol faktor perkalian kedua (j). Hasil dari i * j dicetak dalam setiap iterasi dari perulangan dalam, menciptakan satu baris dari tabel perkalian.
Keuntungan dan Kekurangan Perulangan While Bersarang
Keuntungan
- Fleksibilitas: Perulangan While Bersarang di C++ memberi Anda kontrol yang lebih besar atas logika program Anda.
- Efisiensi: Untuk beberapa algoritma, menggunakan nested while adalah pendekatan yang paling efisien.
Kekurangan
- Kompleksitas: Terlalu banyak perulangan bersarang bisa membuat kode menjadi sulit dipahami dan dikelola.
- Risiko Infinite Loop: Jika tidak ditangani dengan benar, bisa terjadi infinite loop yang akan membuat program Anda terjebak dalam perulangan tanpa akhir.
Perulangan While Bersarang di C++ adalah sebuah teknik yang memberikan kontrol lebih besar kepada programmer tetapi juga menambah tingkat kompleksitas. Dengan pemahaman yang tepat dan penerapan yang hati-hati, nested while loop bisa menjadi alat yang sangat kuat dalam pemrograman C++.
Daftar Pustaka
- Stroustrup, B. (2013). The C++ Programming Language. Addison-Wesley Professional.
- Schildt, H. (2014). C++: The Complete Reference. McGraw-Hill Education.
Sekian artikel mengenai Perulangan While Bersarang di C++. Semoga artikel ini dapat bermanfaat baik untuk menambah ilmu, mengerjakan tugas, maupun untuk sekedar menambah wawasan, Terimakasih atas kunjungannya.
MateriDosen.Com
Posting Komentar untuk "Perulangan While Bersarang (Nested While) di C++: Cara Kerja dan Contoh Program"