Perulangan bersarang
Loop dalam loop: koordinat baris dan kolom.
Pahami konsepnya
Loop bersarang adalah loop di dalam loop — dan intuisinya sederhana: untuk TIAP putaran loop luar, loop dalam menyelesaikan seluruh putarannya lebih dulu. Kalau luar berputar 5 kali dan dalam 10, isi dijalankan 50 kali total. Bayangkan jam: jarum menit menunggu jarum detik menuntaskan putaran penuhnya.
Pola khasnya dua variabel berperan sebagai koordinat: i untuk baris, j untuk kolom. Iterasi pertama lahir dari kombinasi keduanya — baris ke-2 kolom ke-3, baris ke-4 kolom ke-1 — menjadikan loop bersarang mesin cetak alami untuk tabel, kotak, dan segitiga ASCII. String builder kecil di dalam loop luar merangkai satu baris utuh sebelum WriteLine mencetaknya.
Menggambar figur menajamkan nalarnya: segitiga bintang berarti j bergantung pada i (kolom bertambah tiap baris), persegi berarti j tetap rentangnya, dan bentuk cekung memakai i untuk batas atas dan bawah sekaligus. Latihan klasik ini melatih mata melihat pola — keterampilan sesungguhnya dari bab ini.
Coba contoh kode
Console.Write("Tinggi segitiga: ");
int tinggi = int.Parse(Console.ReadLine());
for (int i = 1; i <= tinggi; i++)
{
string baris = "";
for (int j = 1; j <= i; j++)
{
baris += "* ";
}
Console.WriteLine(baris);
}Baris pertama dibangun saat i = 1: loop dalam hanya berputar sekali karena batasnya j <= i. Tiap baris berikut kolomnya bertambah — segitiga tumbuh. Kunci ubahannya ada di batas loop dalam: ganti j <= i dengan j <= tinggi dan segitiga melurus menjadi persegi.
Persegi dan tabel perkalian
// persegi 5x5
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= 5; j++) Console.Write("* ");
Console.WriteLine();
}
// tabel 5x5
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= 5; j++) Console.Write($"{i * j,4}");
Console.WriteLine();
}Dua figur memakai rangka loop yang persis sama — bedanya hanya isi cetakan: bintang tetap versus hasil i*j berkolom rata {,4}. Inilah pelajaran sejatinya: loop bersarang menyediakan kisi baris-kolom, kamu yang memutuskan apa yang ditulis di tiap selnya.
Latihan singkat
Uji: gambar persegi tepi 5×5 — baris pertama/terakhir penuh bintang, tiga baris tengah hanya `*` di ujung.