Lompat ke isi utama

Pelajaran 2: Alur Proyek dengan Perulangan For

Ketika suatu proyek menggunakan perulangan untuk , ia tetap mengikuti logika yang sama saat mengeksekusi perintah. Misalnya, kedua contoh kode ini akan membuat Robot VR bergerak dengan cara yang sama. Namun, proyek dengan loopuntuk, mengulangi dua perintah Drivetrain empat kali untuk melakukannya.

Dua potongan kode untuk menggerakkan persegi ditunjukkan berdampingan untuk mengilustrasikan perbedaan antara menggunakan for loop dan tidak. Yang di sebelah kiri tidak memiliki for loop, dan memiliki perintah drive for dan turn for yang diulang masing-masing empat kali. Yang di sebelah kanan mempunyai for loop, dan tanda panah merah dalam pola melingkar dengan kata-kata 4 times di dalamnya, yang menunjukkan bahwa for loop menyebabkan perintah drive for dan turn for diulang sebanyak empat kali.

Perulangan untuk digunakan untuk mengulang serangkaian perintah sejumlah kali yang ditentukan. Perulangan untuk diulang (juga dikenal sebagai iterasi) atas rangkaian perintah di dalamnya. Dalam loop Python for , variabel 'value' digunakan untuk melacak iterasi saat ini, dan kata kunci 'in' menggunakan fungsi rangeuntuk menentukan jumlah iterasi. Rincian sintaksis for loop ditunjukkan dengan teks di atas setiap kata dalam perintah untuk mengidentifikasi fungsinya. Kata pertama, untuk, memiliki teks "mengidentifikasi loop" di atasnya. Kata kedua, nilai, memiliki teks: "Mengidentifikasi variabel (berapa kali variabel tersebut diulang melalui loop?). Kata ketiga, dalam, memiliki teks "Menghubungkan variabel ke daftar (rentang). Kata terakhir adalah rentang dengan parameter 10 dalam tanda kurung. Teks di atasnya berbunyi, "Mengidentifikasi daftar (Berapa kali ia akan mengulang melalui loop?).

Fungsi rentang mengidentifikasi berapa kali perulangan harus diulang (atau diulang). Untuk mengulang perilaku sejumlah waktu yang diinginkan, tetapkan parameter fungsi rentang.

Fungsi rentang pada hakikatnya membuat daftar sementara yang menentukan apa yang harus dilalui oleh loop, agar dapat diselesaikan. Dalam kasus perilaku berulang, seperti menggambar empat sisi persegi, fungsi rentang menggunakan daftar sementara (0, 1, 2, 3) untuk memungkinkan Robot VR mengeksekusi perintah tersebut empat kali. Pergerakan Robot VR akan berubah tergantung pada parameter fungsi jangkauan, seperti yang ditunjukkan di sini. 

Proyek VEXcode yang mengilustrasikan fungsi rentang. Bunyinya def main buka tanda kurung tutup tanda kurung titik dua baris berikutnya yang menjorok baca pena titik pindahkan buka tanda kurung ke bawah tutup tanda kurung baris berikutnya untuk nilai dalam rentang buka tanda kurung 0 tutup tanda kurung titik dua baris berikutnya yang menjorok baca drivetrain titik drive garis bawah untuk buka tanda kurung maju, 600, MM tutup tanda kurung baris berikutnya drivetrain titik putar garis bawah untuk buka tanda kurung kanan, 90, derajat tutup tanda kurung baris berikutnya tunggu buka tanda kurung lima koma MSEC). Taman Bermain Seni Kanvas dengan robot di tengahnya. Perintah drivetrain dieksekusi 0 kali.
Proyek yang sama seperti di atas, tetapi dengan 1 dalam parameter fungsi rentang. Taman Bermain Seni Kanvas dengan proyek menggambar satu sisi persegi secara lengkap. Perintah drivetrain dieksekusi 1 kali.
Proyek yang sama seperti di atas, tetapi dengan 2 dalam parameter fungsi rentang. Art Canvas Playground menunjukkan bahwa robot telah menggambar dua sisi pertama persegi. Perintah drivetrain dieksekusi 2 kali.
Proyek yang sama seperti di atas, tetapi dengan 3 dalam parameter fungsi rentang. Art Canvas Playground menunjukkan robot telah menggambar tiga sisi persegi. Perintah drivetrain dieksekusi 3 kali.
Proyek yang sama seperti di atas, tetapi dengan 4 dalam parameter fungsi rentang. Art Canvas Playground menunjukkan bahwa robot telah menggambar keempat sisi persegi. Perintah drivetrain dieksekusi 4 kali, melengkapi keempat sisi persegi.

 

Proyek yang sama seperti di atas, tetapi dengan 5 dalam parameter fungsi rentang.

Art Canvas Playground menunjukkan robot telah menggambar keempat sisi persegi, lalu menelusuri sisi pertama lagi. Perintah drivetrain dieksekusi 5 kali, melengkapi persegi, lalu menelusuri sisi pertama lagi.

Perhatikan bahwa bentuk persegi yang digambar tidak berubah saat fungsirentangberubah dari empat ke lima; tetapi posisi akhir Robot VR berubah. Dengan demikian, menggunakan loopuntukdengan fungsi defaultrentangsepuluh, akan menghasilkan bentuk persegi yang sama yang digambar, tetapi Robot VR akan terus mengulangi perilaku tersebut sebanyak enam kali tambahan. 

Robot VR akan bergerak melalui perintah dari header loop for hingga perintah indentasi terakhir. Header loopformengindikasikan bahwa Robot VR harus mengulang tindakan di dalam loop sejumlah kali yang ditentukan sebelum beralih ke perintah berikutnya di luar loop for. Baris yang menjorok menunjukkan perintah apa saja yang ada di dalam loop for dan harus diulang.

Untuk Informasi Anda

Dalam VEXcode VR, perintahwaitselalu ditambahkan dengan loopfor. Tujuan dari perintahwaitadalah untuk memastikan bahwa VEXcode VR dapat menjalankan proyek sebagaimana mestinya, karena platform VEXcode VR bersifat berbasis web. Perintahwaittidak boleh dihapus saat menggunakan loopfor, atau proyek Anda mungkin tidak berjalan sebagaimana mestinya.

Perulangan for dengan perintah wait.

Jumlah kali yang ditentukan di mana loop untuk diatur untuk dijalankan, memungkinkan proyek mengalir keluar dari loopuntukketika telah menyelesaikan iterasi yang diperlukan. Parameter fungsi rentangdalam loop untuk harus tercapai sebelum proyek berpindah ke perintah berikutnya di luar loop. Dalam contoh kode di bawah, setelah perintah Drivetrain dalam loopuntukdijalankan empat kali, proyek akan keluar dari loopuntuk, mengatur warna pena ke merah, dan melaju mundur. Proyek VEXcode dari atas, dengan 4 dalam parameter rentang ditunjukkan dengan panah merah di sekitar for loop dan notasi 4x menunjukkan bahwa proyek akan mengulangi loop empat kali. 2 baris kode tambahan ditambahkan di bagian bawah. Panah menunjukkan bahwa kedua baris tersebut akan dieksekusi setelah keempat iterasi selesai. Baris tersebut terbaca, pena titik set warna buka tanda kurung merah tutup tanda kurung dan drivetrain titik drive garis bawah untuk buka tanda kurung koma terbalik 600 koma mm tutup tanda kurung. Di sebelah kanan adalah gambar proyek setelah dijalankan di taman bermain yang memperlihatkan kotak hitam dengan garis merah keluar yang digambar oleh robot VR.

Tantangan Mini

Dalam proyek ini, Robot VR harus menggambar kotak biru di Art Canvas Playground, tetapi ada kesalahan dalam proyek. Edit proyek untuk menyelesaikan tantangan mini!

Taman bermain Art Canvas dengan kotak biru yang digambar oleh Robot VR.

Video di bawah menunjukkan apa yang harus dilakukan untuk menyelesaikan tantangan mini. Robot mulai di tengah taman bermain dan menggambar keempat sisi persegi biru besar. 

Berkas video
  • Tonton video solusi dan tinjau bagaimana Robot VR harus bergerak untuk menyelesaikan tantangan mini.
  • Ubah proyek Unit3Lesson2 agar sesuai dengan gambar ini, atau salin kode di bawah ini.
     
def main():
	pen.move(BAWAH)
	pen.set_pen_color(MERAH)
	drivetrain.drive_for(MAJU, 600, MM)
	
	untuk nilai dalam rentang(3):
		drivetrain.drive_for(MAJU, 600, MM)
		drivetrain.turn_for(KANAN, 90, DERAJAT)
		tunggu (5, MSEC)
  • Mulai proyek dan identifikasi di mana Robot VR tidak menyelesaikan perilaku yang diharapkan.
  • Ubah proyek dan jalankan proyek lagi. Lihat apakah Robot VR menyelesaikan perilaku yang diharapkan.
  • Jika Robot VR tidak menggambar kotak biru, ulangi langkah sebelumnya dan coba lagi. Terus modifikasi dan jalankan proyek Anda hingga Robot VR menggambar kotak biru.
  • Setelah Robot VR berhasil menggambar kotak biru di Art Canvas Playground, simpan proyek.

Selamat! Anda berhasil memecahkan tantangan mini!

Pertanyaan

Silakan pilih tautan di bawah untuk mengakses kuis pelajaran.

Google Doc / .docx / .pdf