Apa itu While Loop?
Cara kerja pernyataan loop WHILE mirip dengan pernyataan loop Dasar kecuali kondisi EXIT berada di awal loop .
Ia bekerja seperti loop entry-check di mana blok eksekusi bahkan tidak akan dieksekusi sekali jika kondisinya tidak terpenuhi, karena kondisi keluar diperiksa sebelum bagian eksekusi. Itu tidak memerlukan kata kunci 'EXIT' secara eksplisit untuk keluar dari loop karena itu memvalidasi kondisi secara implisit setiap kali loop.
WHILEPenjelasan Sintaks:LOOP … END LOOP;
- Dalam sintaks di atas, kata kunci 'WHILE' menandai awal loop dan 'END LOOP' menandai akhir loop.
- Kondisi EXIT dievaluasi setiap kali sebelum bagian eksekusi mulai dijalankan.
- Blok eksekusi berisi semua kode yang perlu dieksekusi.
- Bagian eksekusi dapat berisi pernyataan eksekusi apa pun.
Contoh 1 : Dalam contoh ini, kita akan mencetak angka dari 1 hingga 4 menggunakan pernyataan loop WHILE. Untuk itu, kami akan mengeksekusi kode berikut.
DECLAREa NUMBER :=1;BEGINdbms_output.put_line('Program started');WHILE (a <= 5)LOOPdbms_output.put_line(a);a:=a+1;END LOOP;dbms_output.put_line(‘Program completed' ); END:/
Penjelasan Kode:
- Baris kode 2 : Mendeklarasikan variabel 'a' sebagai tipe data 'NUMBER' dan menginisialisasinya dengan nilai '1'.
- Baris kode 4 : Mencetak pernyataan "Program dimulai".
- Baris kode 5: Kata kunci 'WHILE' menandai awal loop, dan juga memeriksa apakah nilai 'a' kurang dari atau sama dengan 5
- Baris kode 7: Mencetak nilai 'a'.
- Baris kode 8: Menambahkan nilai 'a' dengan +1.
- Baris kode 9: Kata kunci 'END LOOP' menandai akhir dari blok eksekusi.
- Kode dari baris 7 dan baris 8 akan terus dijalankan hingga 'a' mencapai nilai 6, karena kondisi akan mengembalikan TRUE, dan kontrol akan KELUAR dari loop.
- Baris kode 10: Mencetak pernyataan "Program selesai"
Ringkasan
Loop | WHILE Loop |
Kriteria KELUAR | Keluar saat kondisi pemeriksaan kembali salah |
Pemakaian | Baik untuk digunakan ketika jumlah pengulangan tidak diketahui, dan keluar didasarkan pada beberapa kondisi lain. |