Langsung ke konten utama

Pelajaran 4: Menggunakan blok [Selamanya]

Memeriksa Kondisi Berulang Kali

Seperti yang diamati pada Pelajaran sebelumnya, blok [Jika maka] hanya memeriksa kondisi sekali. Agar kondisi yang terdapat dalam blok [Jika maka] dapat diperiksa berulang kali, diperlukan blok C [Selamanya]. Blok [Selamanya] adalah blok C dari kategori Kontrol yang mengulang perilaku yang terdapat di dalamnya, selamanya.

Blok VEXcode VR Forever yang kosong.
  • Muat proyek Unit7Lesson3 dari Pelajaran sebelumnya.

    Proyek blok VR VEXcode yang sama dari akhir pelajaran sebelumnya. Ini dimulai dengan blok When Started dan kemudian ada blok If Then dengan parameter boolean dari blok Color Sensing yang berbunyi 'Mata depan mendeteksi warna hijau?' dan blok Turn right for 90 degrees di dalam kontainer If. Selanjutnya ada blok if dan blok putar yang sama, tetapi diubah menjadi belok kiri 90 derajat jika warna biru terdeteksi. Selanjutnya, tumpukan blok jika dan blok belok yang sama digunakan tetapi diubah menjadi Berhenti Mengemudi jika warna merah terdeteksi. Terakhir, tumpukan blok dan putar yang sama digunakan tetapi diubah menjadi Maju jika tidak ada warna yang terdeteksi.
  • Ganti nama proyek Unit7Lesson4.

    Toolbar VEXcode VR dengan tombol 'Nama Proyek' disorot dalam kotak merah, di sebelah kiri tombol Pilih Playground. Nama proyek ditetapkan menjadi Unit 7 Pelajaran 4.
  • Seret blok [Selamanya] ke ruang kerja dan tempelkan ke bagian atas tumpukan blok. Perhatikan bahwa ini akan mencakup keempat blok [Jika maka] di dalam blok [Selamanya].

    Proyek blok VEXcode VR dari sebelumnya, tetapi dengan panah yang menunjukkan penambahan blok Forever yang membungkus semua pernyataan if. Dimulai dengan blok When Started dan kemudian terdapat serangkaian empat pernyataan if yang dibungkus dalam blok Forever. Pertama adalah blok If Then dengan parameter boolean dari blok Color Sensing yang berbunyi 'Mata depan mendeteksi warna hijau?' dan blok Belok kanan 90 derajat di dalam kontainer If. Selanjutnya ada blok if dan blok putar yang sama, tetapi diubah menjadi belok kiri 90 derajat jika warna biru terdeteksi. Selanjutnya, tumpukan blok jika dan blok belok yang sama digunakan tetapi diubah menjadi Berhenti Mengemudi jika warna merah terdeteksi. Terakhir, tumpukan blok dan putar yang sama digunakan tetapi diubah menjadi Maju jika tidak ada warna yang terdeteksi.

    Untuk Informasi Anda

    Blok dapat ditambahkan ke awal atau tengah tumpukan proyek dengan menyelaraskan bagian atas blok dengan penempatan yang diinginkan dalam tumpukan.

    Visualisasi tentang bagaimana blok Forever dapat diseret ke bagian atas tumpukan dan secara otomatis membungkus isi tumpukan tersebut. Proyek blok VR VEXcode sama seperti sebelumnya dan berada dalam perulangan tanpa akhir. Pernyataan if tersebut adalah sebagai berikut: Pertama adalah blok If Then dengan parameter boolean berupa blok Color Sensing yang berbunyi 'Mata depan mendeteksi warna hijau?' dan blok Belok kanan 90 derajat di dalam wadah If. Selanjutnya ada blok if dan blok putar yang sama, tetapi diubah menjadi belok kiri 90 derajat jika warna biru terdeteksi. Selanjutnya, tumpukan blok jika dan blok belok yang sama digunakan tetapi diubah menjadi Berhenti Mengemudi jika warna merah terdeteksi. Terakhir, tumpukan blok dan putar yang sama digunakan tetapi diubah menjadi Maju jika tidak ada warna yang terdeteksi.

    Video di bawah ini menunjukkan cara menambahkan blok [Forever] di sekitar empat blok [If then] dalam proyek saat ini. Perhatikan bahwa bagian atas blok [Selamanya] sejajar tepat setelah [Saat dimulai] dan blok [Jika maka] pertama. Blok [Forever] kemudian membungkus semua blok berikutnya dalam tumpukan proyek.

  • Sekarang setelah blok [Selamanya] ditambahkan ke proyek sehingga semua blok [Jika maka] akan selalu diperiksa kondisinya, buka Disk Maze Playground dan jalankan proyeknya.
  • Saat proyek ini dijalankan, Robot VR akan menavigasi Disk Maze Playground dari awal hingga akhir. Begitu robot VR mendeteksi warna merah, ia akan berhenti bergerak.

    Tampilan dari atas arena bermain VR Disk Maze, dengan robot VR telah melewati setiap cakram dan berhenti di cakram merah terakhir.
  • Pada proyek dari Pelajaran sebelumnya, kondisi di dalam blok [Jika maka] hanya diperiksa sekali. Karena kondisi di dalam blok [Jika maka] hanya diperiksa sekali, Robot VR terus bergerak maju tanpa henti karena kondisi tidak terdeteksinya warna dilaporkan sebagai TRUE.

    Diagram alur logika dalam proyek blok VEXcode VR kami tanpa blok forever. Panah menunjukkan bahwa setiap pernyataan if hanya dijalankan sekali sebelum proyek berakhir, sehingga membuat proyek kita jauh kurang responsif daripada yang kita inginkan. Proyek kami memeriksa apakah mata depan mendeteksi warna hijau, dan jika ya, maka akan berputar ke kanan sebesar 90 derajat. Selanjutnya, jika mata depan mendeteksi warna biru, ia akan berputar ke kiri sebesar 90 derajat. Selanjutnya, jika sensor mata depan mendeteksi warna merah, sensor akan berhenti mengemudi. Terakhir, jika mata depan tidak mendeteksi apa pun, ia akan bergerak maju.
  • Sekarang setelah blok [Selamanya] ditambahkan, setiap kondisi blok C [Jika maka] akan diperiksa berulang kali. Selama alur proyek, jika kondisi blok [Jika maka] C bernilai TRUE, maka blok-blok di dalam blok [Jika maka] C akan dieksekusi. Jika kondisi blok [Jika maka] C adalah SALAH, blok-blok di dalam blok [Jika maka] C akan dilewati, dan alur proyek akan berlanjut ke blok berikutnya dalam tumpukan. Hal ini memungkinkan Robot VR untuk melakukan perilaku diskrit seperti berbelok atau berhenti setelah mendeteksi warna tertentu.

    Diagram alur logika proyek blok VR VEXcode di sebelah kiri, yang menjalankan contoh robot VR pada gambar di sebelah kanan. Gambar tersebut menunjukkan robot VR mencapai cakram biru dan berbelok ke kiri. Diagram tersebut menunjukkan bahwa pernyataan if diulang tanpa henti, dan masing-masing diperiksa di setiap perulangan. Setelah mata depan tidak mendeteksi warna hijau, ia kemudian memeriksa warna biru yang menghasilkan nilai benar dan memutar robot ke kiri sebesar 90 derajat. Setelah itu, alur logika berlanjut ke bawah tumpukan, memeriksa apakah ada warna merah atau tidak.
  • Blok [Jika maka] digunakan bersama dengan blok [Selamanya] untuk memastikan bahwa kondisi terus diperiksa.

    Diagram alur logika dalam proyek blok VEXcode VR kami, termasuk blok Forever terluar. Setiap panah kini diberi label dengan apa yang diukur oleh perintah logika tersebut, dan panah kuning menunjukkan alur logika yang berulang melalui setiap blok dalam loop Forever secara terus menerus. Jelas bahwa setiap pernyataan if diperiksa pada setiap perulangan blok forever, terlepas dari apakah hasilnya benar atau salah.

Menggunakan Blok Sakelar 

Ini adalah blok Switch [Selamanya]. Perintah Switch Python untuk Forever membuatwhile mana kondisinya benar. Perintah yang bersarang di dalam loop kemudian akan diulang selamanya, karena kondisinya selalu Benar. 

Versi blok switch VEXcode VR dari blok Forever. Kode Python tersebut berbunyi 'while True:', yang merupakan padanan Python untuk pernyataan "selamanya".

Pertanyaan

Silakan pilih tautan di bawah ini untuk mengakses kuis pelajaran.

Google Doc / .docx / .pdf