Loop: do...while
Tujuan Pembelajaran
Section titled “Tujuan Pembelajaran”Setelah halaman ini, kamu dapat membuat loop do...while dan menjelaskan perbedaannya dengan while.
Pendahuluan
Section titled “Pendahuluan”do...while hampir sama dengan while, dengan satu perbedaan penting: blok kode selalu dijalankan minimal satu kali, bahkan jika kondisi awal sudah false.
Analogi Kehidupan Sehari-hari
Section titled “Analogi Kehidupan Sehari-hari”Mencoba Login
Section titled “Mencoba Login”Saat login ke aplikasi, kamu selalu memasukkan password setidaknya sekali. Baru setelah dicoba, sistem mengecek apakah benar.
Lakukan: Masukkan password Cek apakah benarSelama password salah → ulangiBerbeda dengan while yang cek kondisi dulu baru bertindak, do...while bertindak dulu baru cek kondisi.
Penjelasan Materi
Section titled “Penjelasan Materi”Bentuk dasar:
do { // tindakan} while (kondisi)- Blok
do {}dijalankan tanpa memeriksa kondisi. - Setelah blok selesai, kondisi baru diperiksa.
- Jika
true, ulangi dari awal blok. - Jika
false, loop berhenti.
Visual Illustration
Section titled “Visual Illustration”while do...while────── ──────────Cek kondisi ─► false Jalankan blok │ │ true Cek kondisi ─► false → SELESAI │ │ Jalankan blok true │ │ (ulangi) (ulangi)Mari Mencoba
Section titled “Mari Mencoba”Buat src/bab3/do-while.ts:
let percobaan: number = 0const maxPercobaan: number = 3
do { percobaan++ console.log(`Percobaan ke-${percobaan}: Memasukkan password...`)} while (percobaan < maxPercobaan)
console.log(`Selesai setelah ${percobaan} percobaan.`)Jalankan:
tsx src/bab3/do-while.tsOutput
Section titled “Output”Percobaan ke-1: Memasukkan password...Percobaan ke-2: Memasukkan password...Percobaan ke-3: Memasukkan password...Selesai setelah 3 percobaan.Contoh: Kondisi Awal Sudah False
Section titled “Contoh: Kondisi Awal Sudah False”let nilai: number = 10
// while — blok TIDAK dijalankan sama sekaliwhile (nilai < 5) { console.log("while:", nilai)}
// do...while — blok tetap dijalankan SEKALIdo { console.log("do...while:", nilai)} while (nilai < 5)Output:
do...while: 10while tidak menghasilkan output apapun karena 10 < 5 langsung false. do...while tetap mencetak sekali.
Penjelasan Baris per Baris
Section titled “Penjelasan Baris per Baris”do {— memulai blok yang selalu dijalankan.percobaan++— menambah penghitung di dalam blok.} while (percobaan < maxPercobaan)— kondisi diperiksa di akhir;whiledi sini adalah penutupdo, bukan loop baru.
Kesalahan yang Sering Terjadi
Section titled “Kesalahan yang Sering Terjadi”do { console.log("Berjalan")} while (true)Kondisi selalu true → infinite loop. Pastikan ada yang mengubah kondisi ke false.
Latihan
Section titled “Latihan”Buat program yang mencetak “Selamat datang!” sebanyak 3 kali menggunakan do...while. Kemudian coba ubah kondisi menjadi false dari awal dan amati hasilnya.
Ringkasan
Section titled “Ringkasan”do...whileselalu menjalankan blok minimal satu kali.- Kondisi diperiksa di akhir setiap putaran.
- Perbedaan utama dengan
while: urutan cek kondisi. - Cocok untuk proses yang harus terjadi setidaknya sekali.