MODUL 2: KKA CODING KELAS 9

🔄 Perulangan (Looping) & Pola Bintang

Memahami Otomatisasi Perintah dan Menjawab Tantangan Pola 1 - 4

🎯 Agenda Pembelajaran Hari Ini:

  • Konsep & Keuntungan Penggunaan Looping.
  • Struktur Kode For Loop & While Loop.
  • Trik Perkalian String di Python ("*" * n).
  • Praktik Mandiri: Solusi Pola Bintang dari Level 1 hingga Diamond.
BAGIAN 1: KONSEP DASAR

Mengapa Kita Butuh Looping?

Bayangkan kamu diminta mencetak teks "Saya Belajar Python" sebanyak 100 kali.

❌ Tanpa Loop (Manual)

Mengetik 100 baris perintah yang sama. Sangat boros waktu!

print("Saya Belajar Python")
print("Saya Belajar Python")
# ... diulang 100x

✅ Dengan Loop (Efisien)

Cukup 2 baris instruksi ringkas untuk berapa pun pengulangan.

for i in range(100):
    print("Saya Belajar Python")
BAGIAN 2: SINTAKS

For Loop & Fungsi range()

Digunakan ketika jumlah pengulangan sudah diketahui secara pasti sejak awal.

for i in range(1, 6):
    print(f"Pengulangan ke-{i}")

💡 Penjelasan Komponen:

  • i = Variabel penampung indeks urutan pengulangan.
  • range(1, 6) = Menghasilkan angka 1 sampai 5 (batas akhir 6 tidak termasuk).
  • Indentasi (Spasi) = Perintah di dalam blok yang akan diulang.
BAGIAN 2: SINTAKS

While Loop (Berbasis Kondisi)

Akan terus berjalan selama kondisi bernilai True (Benar).

angka = 1
while angka <= 3:
    print(f"Angka sekarang: {angka}")
    angka = angka + 1  # Pembaruan nilai variabel

⚠️ Catatan Penting:

Pastikan variabel bertambah (angka + 1) agar kondisi bisa menjadi False dan perulangan berhenti.

RINGKASAN SINTAKS

Perbandingan For vs While

Fitur For Loop While Loop
Jumlah Ulang Sudah pasti / diketahui. Belum pasti, tergantung kondisi.
Penghitung Otomatis oleh range(). Wajib ditambah manual.
Penggunaan Utama Iterasi angka & pola daftar data. Program menu, game, validasi password.
SENJATA RAHASIA PYTHON

Trik Perkalian Teks (String)

Python memiliki keunikan di mana teks bisa dikalikan dengan angka untuk mengulangnya dalam 1 baris.

# Mengalikan karakter bintang 5 kali:
print("*" * 5)

# Hasil Output:
# *****

💡 Manfaat untuk Gambar Pola:

Dengan fitur ini, kita bisa membuat gambar bintang tanpa harus menyusun loop bertingkat (*nested loop*) yang rumit!

LEVEL 1 - DASAR

🟩 Level 1: Baris & Persegi Panjang

Mencetak bintang mendatar dan mengulangnya membentuk persegi panjang.

Target Output (Ukuran 4 Baris x 6 Kolom):

******
******
******
******

💡 Clue: Gunakan for i in range(4): dan cetak "*" * 6 di dalamnya.

LEVEL 2 - MENENGAH

🟨 Level 2: Segitiga Siku-Siku

Setiap baris, jumlah bintang bertambah 1 mengikuti urutan baris.

Target Output (Tinggi 5 Baris):

*
**
***
****
*****

💡 Clue: Pada perulangan ke-i, kalikan bintang sebanyak i (contoh: "*" * i).

LEVEL 3 - TINGGI

🟦 Level 3: Piramida Sama Kaki

Memadukan spasi di kiri dan bintang berjumlah ganjil (1, 3, 5, 7) di tengah.

Target Output (Tinggi 4 Baris):

   *
  ***
 *****
*******

💡 Clue: Spasi = " " * (tinggi - i), Bintang = "*" * (2 * i - 1).

LEVEL 4 - BOSS LEVEL

💎 Level 4: Diamond (Belah Ketupat)

Gabungkan Piramida Atas (Level 3) dan Piramida Terbalik Bawah!

Target Output (Setengah Tinggi = 4):

   *
  ***
 *****
*******
 *****
  ***
   *

👑 Tantangan Utama: Buat 2 struktur `for loop` terpisah (1 untuk atas, 1 untuk bawah).

Slide 1 dari 10