Menu
CoddyTech

Loop Bersarang

Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 49 dari 86.

Loop bersarang adalah loop di dalam loop lain. Loop bagian dalam menyelesaikan semua iterasinya untuk setiap satu iterasi loop bagian luar.

let rows = 3
let cols = 2
for row in 1...rows {
    for col in 1...cols {
        print("Row \(row), Col \(col)")
    }
}
// output:
// Row 1, Col 1
// Row 1, Col 2
// Row 2, Col 1
// Row 2, Col 2
// Row 3, Col 1
// Row 3, Col 2

Untuk setiap nilai row, perulangan bagian dalam dimulai ulang dan berjalan melalui semua nilai col, dari 1 hingga cols. Jadi, dengan rows = 3 dan cols = 2, kode di dalamnya berjalan sebanyak 6 kali (3 × 2). rows dan cols tidak pernah berubah: keduanya hanya memberi tahu perulangan kapan harus berhenti.

Perulangan bersarang umum digunakan untuk bekerja dengan struktur seperti kisi atau untuk menghasilkan pola.

Berikut contoh yang mencetak persegi panjang sederhana dari tanda bintang:

for row in 1...2 {
    for col in 1...4 {
        print("*", terminator: "")
    }
    print("")  // Pindah ke baris berikutnya
}
// output:
// ****
// ****

terminator: "" mencegah print menambahkan baris baru, sehingga tanda bintang muncul di baris yang sama. Setelah perulangan bagian dalam selesai, print("") berpindah ke baris berikutnya.

challenge icon

Tantangan

Mudah

Baca dua bilangan bulat dari input: rows dan cols. Gunakan perulangan bersarang untuk mencetak kisi angka, dengan setiap sel menampilkan hasil kali nomor baris dan nomor kolomnya.

Kamu akan menerima input berikut:

  • Baris pertama: jumlah baris (misalnya, "3")
  • Baris kedua: jumlah kolom (misalnya, "4")

Persyaratan:

  • Gunakan perulangan luar untuk baris (1 hingga rows)
  • Gunakan perulangan dalam untuk kolom (1 hingga cols)
  • Cetak hasil kali nomor baris dan kolom saat ini
  • Pisahkan nilai pada baris yang sama dengan spasi
  • Cetak setiap baris pada barisnya sendiri

Petunjuk: Gunakan terminator: " " agar nilai tetap berada pada baris yang sama, lalu gunakan print("") setelah perulangan dalam untuk berpindah ke baris berikutnya.

Misalnya, jika rows bernilai 3 dan cols bernilai 4, outputnya akan seperti berikut:

1 2 3 4 
2 4 6 8 
3 6 9 12 

Gunakan penghitung baru untuk setiap perulangan (misalnya, row untuk baris dan col untuk angka dalam satu baris), lalu bandingkan dengan rows atau cols. Jangan ubah rows dan cols: setiap baris memerlukan cols lagi.

Coba sendiri

let rows = Int(readLine()!)!
let cols = Int(readLine()!)!

// TODO: Tulis kodemu di bawah ini
// Gunakan perulangan bersarang untuk mencetak kisi perkalian
// Perulangan luar: ulangi untuk setiap baris (1 hingga rows)
// Perulangan dalam: ulangi untuk setiap kolom (1 hingga cols)
// Cetak hasil perkalian row * column
// Gunakan print(..., terminator: " ") agar nilai tetap berada pada baris yang sama
// Gunakan print("") setelah perulangan dalam untuk pindah ke baris berikutnya
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Swift