Langsung ke konten utama

Pelajaran 3: Menggunakan Pernyataan If

Menavigasi Labirin Disk Menggunakan PernyataanJika

Dalam Tantangan Labirin Cakram, Robot VR memeriksa kondisi Sensor Mata Depan untuk melihat warna apa yang dilaporkan. Setiap warna mewakili perilaku berbeda yang harus dilakukan oleh Robot VR.

Untuk Informasi Anda

Pernyataan jikahanya menerima kondisi Boolean. Dengan menggunakan pola yang diamati saat menyelesaikan Labirin Cakram di Pelajaran 2, sebuah proyek dapat dibuat di mana Robot VR membuat keputusan apakah kondisi yang dilaporkan bernilai Benar atau Salah.

jika kondisi: 
	lulus

Pernyataan jikaakan dijalankan kali dalam sebuah proyek. Dalam contoh ini, Sensor Mata Depan akan melaporkan True jika objek hijau terdeteksi, dan menjalankan perintah di dalam pernyataan if - belok kanan 90 derajat. Jika objek berwarna hijau tidak terdeteksi, proyek akan beralih ke perintah berikutnya.

def main():
    if front_eye.detect(GREEN):
        drivetrain.turn_for(RIGHT, 90, DEGREES)
    drivetrain.stop()
  • Mulai proyek baru dan pilihDisk Maze Playgroundsaat diminta. Ubin pemilihan Disk Maze Playground di VEXcode VR.
  • Name it Unit7Lesson3.Toolbar di VEXcode VR dengan kotak nama proyek yang ditampilkan. Nama proyeknya adalah Unit 7 Pelajaran 3.

     

  • Tambahkan komentar untuk menjelaskan tujuan perilaku Robot VR selama setiap bagian proyek berikutnya. 
def main():
    # Jika mata depan mendeteksi warna hijau, maka belok kanan

    # Jika mata depan mendeteksi warna biru, maka belok kiri
  • Seret atau ketik pernyataan jika di bawah komentar pertama.
def main():
    # Jika mata depan mendeteksi warna hijau maka belok kanan
    jika kondisi: 
    	lewati

    # Jika mata depan mendeteksi warna biru maka belok kiri
  • Tetapkan kondisi pernyataan if ke perintah front_eye.detect, dan atur parameternya ke 'GREEN.'
def main():
    # Jika mata depan mendeteksi warna hijau, maka belok kanan
	if front_eye.detect(GREEN): 
    	pass
    	
    # Jika mata depan mendeteksi warna biru, maka belok kiri
  • Seret atau ketik perintah turn_for di dalam pernyataan if , untuk mengganti 'pass'. Atur parameter untuk berbelok 90 derajat ke kanan. Nah, jika Sensor Mata Depan mendeteksi 'HIJAU', Robot VR akan berbelok ke kanan 90 derajat.
def main():
    # Jika mata depan mendeteksi warna hijau, maka belok kanan
	if front_eye.detect(GREEN): 
    	drivetrain.turn_for(RIGHT, 90, DEGREES)
    	
    # Jika mata depan mendeteksi warna biru, maka belok kiri
  • Kita akan mengikuti langkah-langkah yang sama untuk menambahkan pernyataanjika tambahan untuk ketiga warna di Disk Maze (hijau, biru, dan merah). Setiap warna dikaitkan dengan perilaku yang berbeda. Perintah di dalam pernyataan jika harus sesuai dengan perilaku yang diinginkan. Tambahkan perintah berikut ke proyek di bawah komentar kedua, sehingga jika Sensor Mata Depan mendeteksi warna 'BIRU,' Robot VR akan berbelok ke kiri 90 derajat.
	# Jika mata depan mendeteksi warna biru, maka belok kiri
	jika front_eye.detect(BLUE): 
    	drivetrain.turn_for(LEFT, 90, DEGREES)
  • Ketika Robot VR mencapai ujung labirin, Sensor Mata Depan akan mendeteksi warna 'MERAH'.

    Tampilan jarak dekat dari Robot VR yang tiba di cakram merah di ujung Labirin Cakram, dan berhenti tepat di depannya.
  • Untuk menghentikan Robot VR, pernyataan jika lainnya perlu ditambahkan dengan instruksi tentang apa yang harus dilakukan jika Sensor Mata Depan mendeteksi 'MERAH.' Tambahkan komentar dan perintah berikut ke proyek agar Robot VR berhenti bergerak jika mendeteksi 'MERAH'. 
	# Jika mata depan mendeteksi warna merah maka berhenti
	jika front_eye.detect(RED): 
    	drivetrain.stop()

Jika Tidak Ada Warna yang Terdeteksi

Robot VR juga dapat mengambil keputusan jika tidak melihat suatu warna dengan menggunakan nilai 'none'. Sebagai contoh, di titik awal Labirin Cakram, Sensor Mata Depan tidak mendeteksi warna apa pun.

Tampilan arena bermain VR dengan dasbor terbuka dan kotak merah yang menyoroti nilai sensor Mata Depan robot. Nilai 'Objek' saat ini adalah false, dan nilai 'Warna' saat ini adalah none.

Karena Sensor Mata Depan tidak mendeteksi warna di awal Labirin Cakram, Robot VR perlu bergerak maju hingga mendeteksi cakram hijau. Pernyataan jika lainnya dapat ditambahkan untuk menginstruksikan Robot VR tentang apa yang harus dilakukan ketika tidak ada warna yang terdeteksi. 

  • Tambahkan komentar dan perintah berikut ke proyek, sehingga jika Sensor Mata Depan tidak mendeteksi warna apa pun, Robot VR akan bergerak maju.
	# Jika mata depan tidak mendeteksi apa pun, maka maju
	jika front_eye.detect(NONE): 
    	drivetrain.drive(FORWARD)
  • Robot VR kini memiliki instruksi untuk setiap warna yang terdeteksi oleh Sensor Mata Depan.
    • JikaSensor Mata Depan mendeteksi 'HIJAU' – Belok kanan 90 derajat
    • JikaSensor Mata Depan mendeteksi 'BIRU' – Belok kiri 90 derajat
    • JikaSensor Mata Depan mendeteksi 'MERAH' – Berhenti mengemudi
    • JikaSensor Mata Depan mendeteksi 'TIDAK ADA' –Maju
  • Buka jendela Playground jika belum terbuka. PastikanDisk Maze Playgroundterbuka, lalu jalankan proyek tersebut. Keseluruhan proyek seharusnya terlihat seperti ini: 
def main():
    # Jika mata depan mendeteksi warna hijau, maka belok kanan
    if front_eye.detect(GREEN):
        drivetrain.turn_for(RIGHT, 90, DEGREES)

    # Jika mata depan mendeteksi warna biru, maka belok kiri
    if front_eye.detect(BLUE):
        drivetrain.turn_for(LEFT, 90, DEGREES)

    # Jika mata depan mendeteksi warna merah, maka berhenti
    if front_eye.detect(RED): 
        drivetrain.stop()

    # Jika mata depan tidak mendeteksi warna apa pun, maka maju terus
    if front_eye.detect(NONE): 
        drivetrain.drive(FORWARD)
  • Apakah robot VR tersebut berperilaku sesuai dengan yang Anda inginkan? Mengapa ya atau mengapa tidak? Pada halaman pelajaran selanjutnya, kita akan mempelajari lebih lanjut tentang proyek ini.

Pilih tombol Berikutnya untuk melanjutkan ke bagian selanjutnya dari Pelajaran ini.