π― Standard Pembelajaran
- β2.1.1 Menulis pseudokod dan melukis carta alir menggunakan struktur kawalan pilihan bersarang dalam penyelesaian masalah.
- β2.1.1 Menulis pseudokod dan melukis carta alir menggunakan struktur kawalan ulangan (for, while) dalam penyelesaian masalah.
- β2.1.2 Mengesan dan membaiki ralat dalam algoritma yang melibatkan struktur bersarang dan ulangan.
π‘ RUJUKAN: Buku Teks ASK Tingkatan 2, Bab 2 Algoritma (2.1 Pembangunan Algoritma)
Struktur kawalan pilihan bersarang terdiri daripada satu struktur kawalan yang terbenam di dalam struktur kawalan yang lain. Struktur kawalan ulangan pula mengulangi satu set arahan sehingga suatu syarat dipenuhi. Set langkah yang berulang disebut gelung (loop) dan setiap ulangan gelung disebut lelaran (iteration).
Pilihan bersarang
Pilihan bersarang berlaku apabila satu struktur JIKA diletakkan di dalam blok JIKA atau JIKA TIDAK yang lain. Ia digunakan apabila keputusan kedua hanya bermakna selepas keputusan pertama diketahui. Contohnya, syarat kedua "adakah markah melebihi 80" hanya diuji jika syarat pertama "adakah murid hadir peperiksaan" adalah benar.
Menyusun syarat bersarang
Susunan syarat mempengaruhi hasil. Syarat yang lebih khusus perlu diuji sebelum syarat yang lebih umum, jika tidak laluan tertentu tidak akan tercapai. Setiap blok bersarang mesti mempunyai penanda tamat yang jelas supaya sempadan blok tidak keliru.
Gelung for
Gelung for digunakan apabila bilangan lelaran diketahui sebelum gelung bermula. Ia mempunyai nilai permulaan, nilai penamat dan langkah kenaikan. Contohnya ULANG i = 1 HINGGA 10 akan menjalankan badan gelung sebanyak sepuluh kali.
Gelung while
Gelung while digunakan apabila bilangan lelaran bergantung pada syarat yang mungkin berubah semasa program berjalan. Syarat diuji sebelum setiap lelaran, jadi badan gelung mungkin tidak dilaksanakan langsung jika syarat palsu dari mula. Pemboleh ubah dalam syarat mesti dikemas kini dalam badan gelung.
Gelung bersarang
Gelung bersarang ialah gelung di dalam gelung. Gelung luar mengawal baris manakala gelung dalam mengawal lajur, contohnya semasa mencetak corak bintang. Jumlah lelaran ialah hasil darab bilangan lelaran gelung luar dengan gelung dalam.
Gelung tidak berkesudahan
Gelung tidak berkesudahan (infinite loop) berlaku apabila syarat tamat tidak pernah dipenuhi, contohnya apabila pemboleh ubah kawalan tidak dikemas kini. Ini menyebabkan atur cara tergantung. Semasa mereka bentuk gelung, pastikan setiap lelaran membawa keadaan lebih hampir kepada syarat tamat.
Mengesan ralat dengan jadual kesanan
Jadual kesanan merekod nilai setiap pemboleh ubah pada setiap lelaran. Bagi gelung bersarang, jadual perlu menunjukkan nilai kedua-dua pemboleh ubah kawalan. Ralat lazim ialah gelung berjalan satu kali lebih atau kurang (ralat off-by-one) akibat menggunakan < sedangkan sepatutnya <=.
π Glosari mini
- Pilihan bersarang
- Struktur pilihan yang terbenam dalam struktur pilihan yang lain.
- Gelung
- Set langkah yang diulang beberapa kali.
- Lelaran
- Satu pusingan lengkap dalam sesuatu gelung.
- Gelung for
- Gelung yang digunakan apabila bilangan lelaran diketahui.
- Gelung while
- Gelung yang berterusan selagi syarat masih benar.
- Gelung bersarang
- Gelung yang terletak di dalam gelung yang lain.
- Pemboleh ubah kawalan
- Pemboleh ubah yang menentukan bila gelung tamat.
- Gelung tidak berkesudahan
- Gelung yang tidak pernah tamat kerana syarat tamat tidak dipenuhi.
- Ralat off-by-one
- Kesilapan yang menyebabkan gelung berjalan satu kali lebih atau kurang.
Jumlah lelaran gelung bersarang = lelaran gelung luar Γ lelaran gelung dalam
Gelung dalam menyelesaikan semua lelarannya bagi setiap satu lelaran gelung luar.
Contoh: Gelung luar 4 kali dengan gelung dalam 3 kali menghasilkan 12 lelaran badan gelung dalam.
π― TIP: Jangan hafal istilah Algoritma Bersarang dan Ulangan secara terasing. Terangkan sebab, syarat penggunaan dan kesannya terhadap output.