Memahami cara menggunakan for loop, while loop, dan fungsi untuk menghindari duplikasi kode pada program Arduino.
Pernahkah kalian membayangkan jika harus menulis perintah yang sama berulang kali di program? Misalnya kita ingin membuat LED berkedip 100 kali. Menuliskan digitalWrite() dan delay() sebanyak 100 kali tentu akan sangat melelahkan dan membuat program menjadi sangat panjang!
For Loop digunakan saat kita sudah tahu pasti berapa kali sebuah blok kode harus diulang (misalnya persis 5 kali, atau 10 kali).
for (inisialisasi; kondisi; update) {
// kode yang akan diulang
}Berbeda dengan For Loop yang mengulang berdasarkan hitungan, While Loop mengulang kode selama suatu kondisi masih bernilai benar (True). Ini sangat berguna kalau kita tidak tahu persis harus berapa kali mengulang, tetapi kita tahu kapan harus berhenti (misal: selama tombol ditekan).
while selalu benar dan tidak pernah berubah jadi salah, program akan terjebak selamanya di dalam loop tersebut (disebut Infinite Loop atau loop tak terhingga).Pernahkah kalian menggunakan remote TV? Setiap tombol punya fungsi spesifik. Kita tidak perlu tahu bagaimana sirkuit di dalam remote bekerja, cukup tekan tombol "Volume Up" dan volume bertambah.
Dalam pemrograman, Fungsi bekerja mirip seperti itu. Kita bisa membungkus beberapa baris kode dan memberinya nama. Jadi setiap kali kita butuh kode tersebut, kita cukup memanggil nama fungsinya. Ini mencegah duplikasi kode atau disebut Reusability Kode.
Mari kita gabungkan Loop dan Fungsi untuk membuat sinyal morse SOS (S = tiga kedipan pendek, O = tiga kedipan panjang).
Solusi:Pastikan nama fungsi yang dipanggil sama persis huruf besar-kecilnya dengan nama saat dibuat (case-sensitive).
Ubah program SOS di atas sehingga menampilkan pola lain, misalnya huruf pertama dari namamu dalam sandi morse. Gunakan fungsi kedipPendek() dan kedipPanjang() serta kombinasi for loop!
Luangkan 2–3 menit untuk menjawab pertanyaan di bawah secara jujur.
Apa yang paling mengejutkan atau menarik hari ini?
Apa hal baru yang kamu pelajari tentang cara membuat kode lebih ringkas?
Apa yang masih membingungkan atau ingin kamu pahami lebih dalam?
Apakah ada bagian dari for loop atau while loop yang masih membingungkan?
Apa yang ingin kamu coba atau pelajari minggu depan?
Bagaimana fungsi bisa membantumu di project akhir nanti?
Refleksi tidak dinilai — ini adalah ruang jujurmu untuk berpikir.
Anda telah mempelajari pondasi Computational Thinking dan dasar-dasar pemrograman Arduino. Sekarang saatnya untuk menguji pemahaman Anda melalui Ulangan Harian.
Mulai Uji Kompetensi (Modul 1 & 2)