Nested Loop
Termasuk bagian Dasar-Dasar dalam perjalanan Python di Coddy. Pelajaran 41 dari 77.
Perulangan bersarang adalah perulangan di dalam perulangan lain. Perulangan bagian dalam menyelesaikan semua iterasinya untuk setiap iterasi perulangan bagian luar.
Mari mulai dengan perulangan bersarang sederhana untuk memahami konsepnya:
rows = 3
cols = 2
# Perulangan luar
for i in range(rows):
print(f"Outer loop iteration: {i}")
# Perulangan dalam
for j in range(cols):
print(f" Inner loop iteration: {j}")Saat kamu menjalankan kode ini, kamu akan melihat:
Outer loop iteration: 0
Inner loop iteration: 0
Inner loop iteration: 1
Outer loop iteration: 1
Inner loop iteration: 0
Inner loop iteration: 1
Outer loop iteration: 2
Inner loop iteration: 0
Inner loop iteration: 1Perhatikan bahwa pada setiap iterasi perulangan luar, perulangan dalam menyelesaikan semua iterasinya. Setiap perulangan memiliki penghitung sendiri: j dimulai lagi dari 0 setiap kali perulangan luar berjalan, sedangkan rows dan cols tetap sama dan hanya memberi tahu perulangan kapan harus berhenti.
Sekarang mari kita lihat contoh praktis: mencetak pola sederhana:
# Cetak persegi panjang bintang berukuran 2x3
for row in range(2): # 2 baris
line = ""
for col in range(3): # 3 kolom
line += "*"
print(line)
# output:
# ***
# ***Perulangan luar mengatur jumlah baris yang kita cetak, dan perulangan dalam menyusun setiap baris dengan menambahkan bintang.
Tantangan
MudahTulis kode yang mencetak pola persegi panjang dari tanda bintang (*) menggunakan perulangan bersarang.
Programmu harus:
- Membaca dua bilangan bulat:
rowsdancols - Menggunakan struktur perulangan bersarang untuk mencetak pola
- Perulangan luar harus mengiterasi setiap baris
- Perulangan dalam harus menyusun setiap baris dengan jumlah tanda bintang yang benar
- Mencetak setiap baris yang sudah selesai
Contoh: jika input-nya adalah 3 baris dan 4 kolom, output-nya harus:
****
****
****Gunakan penghitung baru untuk setiap perulangan, misalnya i untuk baris dan j untuk tanda bintang dalam satu baris, lalu bandingkan dengan rows atau cols. Jangan ubah rows dan cols: setiap baris membutuhkan cols lagi.
Coba sendiri
# Ambil input untuk baris dan kolom
rows = int(input())
cols = int(input())
# Tulis perulangan bersarangmu di sini
# Perulangan luar untuk baris
# Perulangan dalam untuk kolomPelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Rekap: Logika SederhanaOperator Logika Bagian 3Operator Logika Bagian 47Kalkulator Pembagian Tagihan
Pesan Selamat DatangMendapatkan input10FizzBuzz dengan Sentuhan Berbeda
Gambaran Umum PermainanFungsi FizzBuzz8Perulangan
For LoopWhile LoopBreakContinueRingkasan: FaktorialFungsi rangeNested LoopRingkasan: Input Dinamis3Operator Bagian 1
Operator AritmetikaOperator ModuloPintasan AritmetikaRingkasan: Matematika SederhanaOperator Perbandingan9Fungsi
Mendeklarasikan FungsiArgumenMengembalikan NilaiUlasan: Fungsi SigmaUlasan: Fungsi ValidasiNilai Default12Melakukan Perulangan pada Sekuens
Melakukan Perulangan pada ElemenFungsi enumerateMelakukan Perulangan pada string Bagian 1Melakukan Perulangan pada string Bagian 2Latihan sendiri: Compiler Python online