Nested Loop
Termasuk bagian Dasar-Dasar dalam perjalanan C# di Coddy. Pelajaran 46 dari 69.
Perulangan bersarang adalah perulangan di dalam perulangan lain. Perulangan dalam akan menyelesaikan semua iterasinya untuk setiap satu iterasi perulangan luar.
Analogi yang bagus untuk hal ini adalah jam: untuk setiap jam (perulangan luar), jarum menit (perulangan dalam) harus menyelesaikan siklus penuh selama 60 menit.
Contoh perulangan bersarang:
int rows = 2;
int cols = 2;
for (int x = 0; x < rows; x++) {
for (int y = 0; y < cols; y++) {
Console.WriteLine(x + " " + y);
}
}
// Ini akan menghasilkan output:
// 0 0
// 0 1
// 1 0
// 1 1Perulangan luar (x) berjalan sebanyak rows kali, dan untuk setiap kali itu, perulangan dalam (y) berjalan sebanyak cols kali, sehingga isi perulangan dalam dijalankan sebanyak 2 × 2 = 4 kali. Setiap perulangan memiliki penghitung sendiri: y dimulai lagi dari 0 setiap kali perulangan luar berjalan, sedangkan rows dan cols tetap sama dan hanya memberi tahu perulangan kapan harus berhenti.
Kamu mungkin juga memerlukan Console.Write() saat bekerja dengan perulangan bersarang. Berbeda dengan Console.WriteLine(), yang mencetak teks lalu berpindah ke baris baru, Console.Write() mencetak teks tanpa menambahkan baris baru di akhir. Dengan begitu, kamu bisa menyusun output pada baris yang sama:
for (int y = 0; y < 4; y++) {
Console.Write("* ");
}
Console.WriteLine();
// Ini akan menghasilkan output:
// * * * * Di sini, Console.Write() terus mencetak pada baris yang sama, dan Console.WriteLine() di akhir berpindah ke baris berikutnya.
Tantangan
PemulaTulis program yang mencetak persegi panjang dari tanda bintang (*) dengan lebar dan tinggi tertentu.
Input: Dua bilangan bulat: width dan height
Contoh:
Jika width = 5 dan height = 3, output-nya adalah:
*****
*****
*****Jika width = 4 dan height = 6, output-nya adalah:
****
****
****
****
****
****Gunakan counter baru untuk setiap perulangan (misalnya i untuk baris dan j untuk tanda bintang dalam satu baris), lalu bandingkan dengan height atau width. Jangan ubah height dan width itu sendiri: setiap baris membutuhkan width lagi.
Coba sendiri
using System;
public class Program {
public static void Main(string[] args) {
int width = int.Parse(Console.ReadLine());
int height = int.Parse(Console.ReadLine());
// Tulis kodemu di bawah ini
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloKenaikan/PenurunanKenaikan/Penurunan SetelahnyaPintasan Aritmetika7Input dan Output Dasar
Output DasarInterpolasi stringMembaca inputMenguraiRangkuman, Sampai 120Rangkuman, Benar atau Salah5Operator Bagian 2
Operator PerbandinganOperator Logika Bagian 1Operator Logika Bagian 2Ulasan: Logika SederhanaOperator Logika Bagian 36Pengambilan Keputusan
Pernyataan IfIf - ElsePernyataan SwitchOperator TernaryUlasan - If ElseIf - Else Bersarang9Perulangan
For LoopWhile LoopDo While LoopBreakContinueNested LoopInfinite LoopRangkuman: Input DinamisLatihan sendiri: Compiler C# online