Ringkasan Pengajaran
Pengajaran ini akan memperkenalkan konsep struktur kawalan ulangan gelung selagi (while).
ASK Tingkatan 3
3.2.1 Menghasilkan aturcara yang melibatkan:
(i) struktur kawalan jujukan dalam penyelesaian masalah.
(ii) struktur kawalan pilihan dalam penyelesaian masalah.
(iii) struktur kawalan pilihan bersarang dalam penyelesaian masalah.
(iv) struktur kawalan ulangan dalam penyelesaian masalah.
ASK Tingkatan 4
1.3.3 Membezakan pemboleh ubah sejagat (global) dan setempat (local).
1.4.3 Menerangkan aliran struktur kawalan ulangan.
(i) for.
(ii) while.
(iii) do-while.
1.4.4 Menulis aturcara menggunakan struktur kawalan ulangan yang melibatkan:
(i) operator increment (++) dan decrement (--).
(ii) class Math (method random).
(iii) Boolean.
1.5.3 Mengenalpasti nilai bagi pemboleh ubah pada bahagian tertentu aturcara.
Bayangkan 3139 ialah kod rahsia yang diterima. Untuk memecah kod ini, anda mungkin bermula dengan membahagi nombor ini dengan nombor 2, 3 dan seterusnya. Malah, hanya nombor perdana tertentu akan mendapat baki dalam nombor bulat.
Peringatan cara untuk mengikut video:
Tonton video
Pause apabila terdapat praktis dalam video
Cuba bina dan ujiatur cara Python sendiri
Ulang langkah 1 - 3 sehingga akhir video
Transkrip
Hello World! Gelung boleh diberhentikan pada bila-bila masa. Sebagai contoh, kita tambahkan tindakan dalam gleung kita. Jom laksanakan aturcara ini. Seperti yang anda dapat lihat, apabila y ialah 2, penyataan 'break' ini akan hentikan pelaksanaan kod dan keluar daripada loop.
Bagaimanakah kita akan melakukan program pemeriksa nombor perdana? Mari kita buatkan sumbangsaran. Pertama, kita tahu bahawa jika sesuatu nombor itu boleh dibahagikan dengan pembahagi selain 1 atau dirinya sendiri, ianya bukan nombor perdana. Kita boleh mula menganggap semua nombor adalah nombor perdana sehingga terbuktinya ia bukan nombor perdana.
Kita boleh tetapkan satu lagi pembolehubah Boolean. Pembolehubah Boolean boleh dianggap sebagai bendera. Ia bertindak sebagai sebuah papan tanda yang akan memberitahu program yang jauh di bawah, apa yang sedang berlaku. Fikirkan ia sebagai suis lampu dan bayangkan status nombor perdana atau tidak sebagai cahaya lampu. Sekiranya nombor itu adalah perdana, kita akan nampak cahaya. Jadi sepanjang program ini, kita hanya perlu melihat keberadaan cahaya ini untuk mengetahui sama ada nombor tersebut adalah nombor perdana atau tidak.
Pembahagi pertama kita adalah nilai 2. Kita tidak mula dengan 1 kerana semua nombor boleh dibahagikan dengan 1, jadi tiada keperluan untuk semak pembahagi 1. Seterusnya, apakah syarat yang ingin disemak? Kita perlu semak sama ada kita sudah selesai menggunakan semua pembahagi yang perlu diuji iaitu pembahagi dari 2 sehinggalah nombor yang ingin disemak.
Dengan setiap ulangan, pembahagi kita akan bertambah 1. Dan ia akan terus bertambah sehingga nombor kita kurang satu. Sekali lagi, kita tidak memeriksa kes di mana pembahagi adalah nombor kita kerana semua nombor boleh dibahagikan dengan dirinya sendiri. Kita sudah tahu bahawa jika nombor itu boleh dibahagikan dengan nombor lain selain daripada nombor itu sendiri dan 1, ianya bukan nombor perdana. Sebaik sahaja kita tahu ia bukan nombor perdana, kita boleh keluar dari gelung. Jangan lupa, sebelum keluar dari gelung, tukarkan nilai bendera kita Boolean tadi kepada palsu.
Akhir sekali, kita hanya perlu menambah 2 baris untuk memaparkan hasilnya selepas gelung. Terdapat 2 keputusan dalam semakan kita, sama ada nombor itu adalah nombor perdana atau tidak. Ingat sebelum ini kita mempunyai bendera Boolean? Pada akhir program ini lah, kod tersebut akan memeriksa sama ada bendera itu masih benar. Jika benar, nombor ini adalah nombor perdana.
Dengan perancangan ini, sekarang kita boleh susun dan hasilkan aturcara kita. Mari kita imbas kembali apa yang telah kita pelajari hari ini. Yang pertama, kita belajar tentang struktur kawalan ulangan. Yang kedua, kita belajar untuk mengesan perubahan pembolehubah dalam program kita. Yang ketiga, kita belajar tentang penambahan dan pengurangan pembolehubah. Dan akhir sekali, yang keempat, kita belajar tentang bendera Boolean.
Pernahkah anda mendengar ujian FizzBuzz? Ujian FizzBuzz adalah soalan temuduga pengaturcara yang dikatakan betul-betul menguji kebolehan pengaturcaraan seseorang. Ujian FizzBuzz ini digunakan dalam syarikat teknologi hebat seperti Google, Facebook untuk menguji keupayaan pengaturcaraan calon mereka. Ujiannya berbunyi seperti ini, buat satu aturcara yang akan memaparkan nombor 1 sehingga 100. Setiap kali anda menemui nombor gandaan tiga, paparkan perkataan Fizz sahaja, dan bukan nombor gandaan tiga tersebut. Setiap kali anda menemui nombor gandaan 5, paparkan Buzz, dan jika nombornya adalah gandaan 3 dan gandaan 5, paparkan FizzBuzz.
Output untuk 15 nombor pertama akan kelihatan seperti yang ditunjukkan. 1, 2 Fizz 4, Buzz, Fizz, 7 8 Fizz, Buzz 11, Fizz, 13 14 FizzBuzz!
Selamat mencuba!