Learn
← Previous Next →

Hari 6: Perulangan for & range

60 min Last updated 26 Mar 2026

for Loop

Digunakan untuk mengiterasi sequence (list, string, range, dll).

# Iterasi range
for i in range(5):         # 0, 1, 2, 3, 4
    print(i)

for i in range(1, 6):      # 1, 2, 3, 4, 5
    print(i)

for i in range(0, 11, 2):  # 0, 2, 4, 6, 8, 10
    print(i)

for i in range(10, 0, -1): # 10, 9, ..., 1 (countdown)
    print(i)

Iterasi Sequence

# List
buah = ["apel", "mangga", "jeruk", "pisang"]
for b in buah:
    print(f"- {b.title()}")

# String
for huruf in "Python":
    print(huruf, end=" ")  # P y t h o n

# enumerate — dapat indeks + nilai
for i, b in enumerate(buah, start=1):
    print(f"{i}. {b}")

# zip — iterasi dua sequence bersamaan
nama  = ["Ana", "Budi", "Citra"]
nilai = [88, 75, 92]
for n, v in zip(nama, nilai):
    print(f"{n}: {v}")

Nested for Loop

# Tabel perkalian
for i in range(1, 4):
    for j in range(1, 4):
        print(f"{i}x{j}={i*j}", end="  ")
    print()  # newline setelah setiap baris

# Pattern bintang
n = 5
for i in range(1, n+1):
    print("*" * i)

for + else

Blok else dijalankan jika loop selesai tanpa break.

target = 7
angka  = [1, 3, 5, 9, 11]

for a in angka:
    if a == target:
        print(f"Ketemu: {target}")
        break
else:
    print(f"{target} tidak ditemukan dalam list")

Fungsi range() Detail

# range(stop)
# range(start, stop)
# range(start, stop, step)

r = range(1, 20, 3)
print(list(r))   # [1, 4, 7, 10, 13, 16, 19]
print(len(r))    # 7
print(r[2])      # 7
print(10 in r)   # True

Assignment

Buat program yang menampilkan: (1) semua bilangan prima antara 1-50, (2) tabel FPB dan KPK untuk pasangan angka (12,18) dan (15,25).

Expected output:

Bilangan prima 1-50:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
FPB(12,18) = 6, KPK(12,18) = 36
FPB(15,25) = 5, KPK(15,25) = 75
PY main.py
Solution
Output