Perulangan dengan for

for i in 0..10 — perulangan rentang yang ringkas, dengan break dan continue.

Perulangan dengan for

Pola while yang baru kita pelajari — menghitung dari nol sampai batas — sangat umum sehingga AHA! Lang menyediakan bentuk yang lebih ringkas: for dengan rentang angka.

Bentuk Dasar

for i in 0..5 {
    print(i);
}

Output:

0
1
2
3
4

Struktur:

for <variabel> in <awal>..<akhir> {
    ...kode yang diulang...
}
  • Variabel (misal i) otomatis berisi nilai putaran saat ini.
  • Rentang 0..5 berarti: mulai dari 0, sampai sebelum 5 (5 tidak ikut). Ini disebut exclusive end.
  • Tidak perlu mendeklarasikan atau menaikkan counter secara manual — semuanya diurus kompiler.

Berapa Kali Loop Berjalan?

for i in 0..3 { print(i); }   // 0, 1, 2       → 3 kali
for i in 1..4 { print(i); }   // 1, 2, 3       → 3 kali
for i in 0..1 { print(i); }   // 0             → 1 kali
for i in 0..0 { print(i); }   // (tidak ada)   → 0 kali

Rumusnya: rentang a..b menjalankan b - a putaran.

Menjumlahkan dengan for

Ingat latihan 1..100 dengan while? Versi for jauh lebih singkat:

let total = 0;

for i in 1..101 {
    total = total + i;
}

print(total); // 5050

break dan continue di for

Sama seperti while:

// break: berhenti lebih awal
let total = 0;
for i in 0..100 {
    if i == 5 {
        break;
    }
    total = total + i;
}
print(total); // 0 + 1 + 2 + 3 + 4 = 10
// continue: lewati satu putaran
let jumlah_ganjil = 0;
for i in 0..10 {
    if i % 2 == 0 {
        continue;
    }
    jumlah_ganjil = jumlah_ganjil + i;
}
print(jumlah_ganjil); // 1 + 3 + 5 + 7 + 9 = 25

Memakai Variabel Putaran

Variabel rentang bisa dipakai dalam perhitungan apa pun:

// tabel perkalian 7
for i 1..11 {
    print(7 * i);
}
// 7, 14, 21, ..., 70

while atau for?

SituasiPilih
Kamu tahu persis berapa banyak putaran (rentang angka)for
Perulangan tergantung kondisi yang berubah-ubahwhile
Mau melewati banyak elemen bertahap (2, 4, 6, ...)while dengan counter manual

Keduanya punya break/continue, jadi kamu bisa mulai dengan yang terasa paling wajar.

Latihan

  1. Cetak semua bilangan genap dari 0 sampai 20 menggunakan for dan i % 2.
  2. Hitung hasil perkalian 1 * 2 * 3 * ... * 10 (faktorial 10) — mulai dari hasil = 1.
  3. Cetak kuadrat dari 1 sampai 10 (i * i).
  4. Gabungkan for dan if: hitung berapa banyak angka dari 1 sampai 50 yang habis dibagi 5.

Lanjut ke Fungsi