Operator#

Perkenalan#

Blok Operator di VEXcode IQ (generasi ke-1) membantu robot bekerja dengan angka dan kata. Blok-blok ini dapat menyelesaikan soal matematika, membandingkan nilai, mengevaluasi apakah kondisi benar atau salah, dan bekerja dengan string. String dapat digunakan untuk mencetak nilai dan kata.

Berikut adalah daftar blok yang tersedia:

  • operator matematika – Melakukan penjumlahan, pengurangan, perkalian, atau pembagian.

  • operator perbandingan – Membandingkan dua nilai menggunakan operator lebih besar dari, kurang dari, atau sama dengan.

  • operator logika – Mengevaluasi beberapa kondisi menggunakan dan atau atau.

  • operator not – Membalikkan nilai Boolean.

  • operator rentang – Memeriksa apakah suatu angka berada dalam suatu rentang.

  • pilih acak – Menghasilkan angka acak dalam rentang yang ditentukan.

  • angka pembulatan – Membulatkan angka ke bilangan bulat terdekat.

  • fungsi matematika – Menerapkan operasi seperti akar kuadrat, trigonometri, logaritma, dan eksponensiasi.

  • atan2 – Menghitung invers tangen dari y/x.

  • sisa – Melaporkan sisa dari operasi pembagian.

operator matematika#

Blok pelapor operator matematika melakukan operasi matematika dasar pada nilai yang ditempatkan di kedua sisi operator. Blok ini mengembalikan hasil berdasarkan presisi cetak proyek, yang secara default adalah 0 tempat desimal tetapi dapat disesuaikan menggunakan blok atur presisi cetak di layar.

Blok pelapor operator Matematika.#
([0] [math_plus v] [0])

Parameter

Keterangan

nilai 1

Angka pertama yang digunakan dalam operasi tersebut.

operator

Operator matematika yang digunakan:

  • + - Penjumlahan
  • - - Pengurangan
  • * - Perkalian
  • / - Pembagian

nilai 2

Angka kedua yang digunakan dalam operasi tersebut.

Contoh

saat dimulai
[Perform basic addition and show two decimal places.]
atur presisi cetak ke [0.01 v] di layar
cetak ([10] [math_plus v] [10.5]) di layar ▶

operator perbandingan#

Blok Boolean operator perbandingan melaporkan apakah perbandingan antara dua nilai adalah Benar atau Salah.

  • Benar – Perbandingan tersebut tepat (misalnya, 5 > 3 menghasilkan Benar).

  • Salah – Perbandingan tersebut tidak tepat (misalnya, 2 ≥ 5 menghasilkan Salah).

Blok Boolean operator perbandingan.#
<[0] [math_equal v] [0]>

Parameter

Keterangan

nilai 1

Nilai pertama yang akan dibandingkan.

operator

Perbandingan yang digunakan:

  • = - Sama dengan
  • < - Kurang dari
  • ≤ - Kurang dari atau sama dengan
  • > - Lebih besar dari
  • ≥ - Lebih besar dari atau sama dengan

nilai 2

Nilai kedua yang akan dibandingkan.

Contoh

saat dimulai
[Turn right until the heading reaches 90 degrees.]
belok [kanan v]
tunggu [0.5] detik
tunggu sampai <(arah kendarai dalam derajat) [math_greater_than v] [90]>
hentikan mengemudi

operator logika#

Blok Boolean operator logika melaporkan apakah kondisi logika antara beberapa nilai adalah Benar atau Salah.

  • Benar – Kondisi logika terpenuhi.

  • Salah – Kondisi logika tidak terpenuhi.

Blok Boolean Operator Logika.#
<<> [dan v] <>>

Parameter

Keterangan

kondisi 1

Kondisi Boolean pertama yang akan dievaluasi.

operator

Operator logika yang digunakan: and melaporkan True jika kedua kondisi benar. or melaporkan True jika setidaknya satu kondisi benar.

kondisi 2

Kondisi Boolean kedua yang akan dievaluasi.

Contoh

saat dimulai
[Display if the ▲ and ▼ buttons are pressed.]
selamanya
bersihkan layar
atur kursor ke baris [1] kolom [1] di layar
jika <<tombol [▲ v] Brain ditekan?> [dan v] <tombol [▼ v] Brain ditekan?>> maka
cetak [Buttons pressed!] di layar ▶
selesai
selesai

bukan operator#

Blok Boolean operator not membalikkan hasil dari blok Boolean. Jika inputnya True, maka akan dilaporkan False, dan jika inputnya False, maka akan dilaporkan True.

  • Benar – Kondisi input biasanya akan melaporkan Salah.

  • Salah – Kondisi input biasanya akan melaporkan Benar.

Blok Boolean Operator Not.#
<bukan <>>

Parameter

Keterangan

kondisi

Kondisi Boolean yang akan dibalik.

Contoh

saat dimulai
[Turn until the robot is facing left. ]
selamanya
jika <bukan <(arah kendarai dalam derajat) [math_greater_than v] [270]>> maka
belok [kanan v]
lainnya
hentikan mengemudi

operator lapangan#

Blok Boolean operator rentang melaporkan apakah suatu nilai berada dalam rentang yang ditentukan.

  • Benar – Jika nilainya berada dalam rentang yang ditentukan.

  • Salah – Jika nilainya berada di luar rentang.

Blok Boolean Operator Jangkauan.#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

Parameter

Keterangan

operator pertama

Operator perbandingan yang digunakan:

  • < - Kurang dari
  • ≤ - Kurang dari atau sama dengan
  • - Lebih besar dari
  • ≥ - Lebih besar dari atau sama dengan

nilai

Nilai yang perlu diperiksa.

operator kedua

Operator perbandingan yang digunakan:

  • < - Kurang dari
  • ≤ - Kurang dari atau sama dengan
  • - Lebih besar dari
  • ≥ - Lebih besar dari atau sama dengan

Contoh

saat dimulai
[Turn and display when facing forward or back. ]
belok [kanan v] sejauh [360] derajat ◀ dan jangan tunggu
selamanya
bersihkan layar
atur kursor ke baris [1] kolom [1] di layar
jika <[270] [math_greater_than v] (arah kendarai dalam derajat) [math_greater_than v] [90]> maka
cetak [Facing backward!] di layar ▶
lainnya
cetak [Facing forward!] di layar ▶

pilih secara acak#

Blok pelapor pilih acak melaporkan angka positif atau negatif acak antara nilai minimum dan maksimum. Blok ini dapat mengembalikan nilai minimum dan nilai maksimum. Misalnya, memilih 1 hingga 10 dapat mengembalikan bilangan bulat apa pun dari 1 hingga 10.

Blok reporter Pick Random.#
pilih acak [1] hingga [10]

Parameter

Keterangan

menit

Angka terendah yang mungkin dapat dipilih.

maksimal

Angka tertinggi yang mungkin dapat dipilih.

Contoh

saat dimulai
[Display a number between 1 and 10.]
cetak (pilih acak [1] hingga [10]) ▶

angka bulat#

Blok pelapor angka bulat melaporkan angka yang diberikan dibulatkan ke bilangan bulat terdekat, mengikuti aturan pembulatan standar:

  • Jika angka desimalnya 0,5 atau lebih besar, angka tersebut dibulatkan ke atas.

  • Jika angka desimal kurang dari 0,5, angka tersebut dibulatkan ke bawah.

Blok reporter Round Number.#
(bulatkan [0] ke [0] tempat desimal)

Parameter

Keterangan

nomor

Angka yang akan dibulatkan.

tempat desimal

Jumlah angka desimal yang akan dibulatkan.

Contoh

saat dimulai
[Display the rounded result of 10 / 3.]
atur presisi cetak ke [0.01 v] di layar
cetak (bulatkan ([10] [math_division v] [3]) ke [1] tempat desimal) di layar ▶

fungsi matematika#

Blok pelapor fungsi matematika menerapkan fungsi matematika yang dipilih ke angka yang diberikan dan mengembalikan hasilnya. Blok ini mendukung operasi seperti nilai absolut, pembulatan, akar kuadrat, fungsi trigonometri, logaritma, dan perpangkatan.

Blok pelapor Fungsi Matematika.#
[abs v] dari [0]

Parameter

Keterangan

fungsi

Operasi matematika yang diterapkan pada nilai input:

  • abs - Nilai absolut
  • floor - Membulatkan ke bawah
  • ceiling - Membulatkan ke atas
  • sqrt - Akar kuadrat
  • sin - Sinus
  • cos - Kosinus
  • tan - Tangen
  • asin - Sinus invers
  • acos - Kosinus invers
  • atan - Tangen invers
  • ln - Logaritma natural
  • log - Logaritma basis 10
  • e^ - Bilangan Euler dipangkatkan
  • 10^ - 10 dipangkatkan
  • negative - Melaporkan nilai negatif dari angka tersebut

nomor

Angka yang akan diterapkan fungsi tersebut.

Contoh

saat dimulai
[Display the square root of 16.]
cetak ([sqrt v] dari [16]) di layar ▶

atan2#

Blok pelapor atan2 melaporkan invers tangen dari Y/X sebagai sudut dalam derajat, yang mewakili sudut antara sumbu X positif dan titik (X, Y).

(atan2 dari x:[4] y:[3])

Parameter

Keterangan

X

Posisi horizontal titik tersebut, diukur dari titik asal (0,0).

y

Posisi vertikal titik tersebut, diukur dari titik asal (0,0).

Contoh

saat dimulai
[Calculate the angle from current position (4, 3).]
cetak (atan2 dari x:[4] y:[3]) di layar ▶

sisa#

Blok pelapor sisa melaporkan sisa dari operasi pembagian antara dua nilai.

Blok reporter The Remainder.#
(sisa dari [0] / [0])

Parameter

Keterangan

dividen

Angka yang akan dibagi.

pembagi

Angka yang akan dibagi.

Contoh

saat dimulai
[Display the remainder of 10 / 3.]
cetak (sisa dari [10] / [3]) di layar ▶