Operatoriai#

Įvadas#

„VEXcode AIR“ operatoriaus blokai padeda dronui dirbti su skaičiais ir žodžiais. Šie blokai gali spręsti matematinius uždavinius, lyginti reikšmes, įvertinti, ar sąlygos yra teisingos, ar klaidingos, ir dirbti su eilutėmis. Eilutės gali būti naudojamos reikšmėms ir žodžiams spausdinti.

Žemiau pateikiamas galimų blokų sąrašas:

  • matematinis operatorius — Atlieka sudėties, atimties, daugybos arba dalybos veiksmus.

  • palyginimo operatorius – palygina dvi reikšmes naudodamas operatorius „didesnis nei“, „mažesnis nei“ arba „lygus“.

  • loginis operatorius — Įvertina kelias sąlygas naudodamas ir arba arba.

  • ne operatorius — Invertuoja loginę reikšmę.

  • diapazono operatorius – tikrina, ar skaičius patenka į diapazoną.

  • pick random — Sugeneruoja atsitiktinį skaičių nurodytame diapazone.

  • apvalinti skaičių – suapvalina skaičių iki artimiausio sveikojo skaičiaus.

  • matematinės funkcijos — Taiko tokias operacijas kaip kvadratinės šaknies traukimas, trigonometrija, logaritmai ir laipsniškas kėlimas.

  • atan2 — Apskaičiuoja atvirkštinę Y/X tangentinę.

  • likutis — Pateikia dalybos operacijos likutį.

  • join – Sujungia dvi eilutes į vieną.

  • letter – Iš eilutės ištraukia simbolį pagal poziciją.

  • length – nurodo simbolių skaičių eilutėje.

  • contains – Patikrina, ar eilutėje yra konkretus žodis arba simbolis.

  • convert – Konvertuoja skaičių į tekstą, sveikąjį skaičių arba dešimtainį skaičių.

matematikos operatorius#

Matematinio operatoriaus reporterio blokas atlieka pagrindinius matematinius veiksmus su reikšmėmis, pateiktomis abiejose operatoriaus pusėse. Jis grąžina rezultatą, pagrįstą projekto spausdinimo tikslumu, kuris pagal numatytuosius nustatymus yra 0 skaitmenų po kablelio, bet jį galima koreguoti naudojant blokus set print precision on screen arba set print precision on console.

Matematikos operatoriaus reporterio blokas.#
([0] [math_plus v] [0])

Parametrai

Aprašymas

1 reikšmė

Pirmasis operacijoje naudojamas skaičius.

operatorius

Naudojamas matematinis operatorius:

  • + - Sudėtis
  • - - Atimtis
  • * - Daugyba
  • / - Dalyba

2 reikšmė

Antrasis skaičius, naudojamas operacijoje.

Pavyzdys

Atlikite pagrindinį sudėties uždavinį ir parodykite du skaitmenis po kablelio.#
kai pradėta
[Perform basic addition and show two decimal places.]
nustatyti spausdinimo tikslumą į [0.01 v] konsolėje
spausdinti ([10] [math_plus v] [10.5]) konsolėje ▶

palyginimo operatorius#

Loginis palyginimo operatorius nurodo, ar dviejų reikšmių palyginimas yra teisinga, ar klaidinga.

  • Teisinga – Palyginimas teisingas (pvz., 5 > 3 grąžina Teisinga).

  • Klaidinga – Palyginimas neteisingas (pvz., 2 ≥ 5 grąžina Klaidinga).

Palyginimo operatoriaus Būlio blokas.#
<[0] [math_equal v] [0]>

Parametras

Aprašymas

1 reikšmė

Pirmoji palyginama vertė.

operatorius

Naudojamas palyginimas:

  • = – Lygus
  • < – Mažiau nei
  • ≤ – Mažesnis arba lygus
  • > – Didesnis nei
  • ≥ – Didesnis arba lygus

2 reikšmė

Antroji vertė, kurią reikia palyginti.

Pavyzdys

kai pradėta
[Fly to position (0, 300, 500).]
pakilti iki [500] [mm v] ▶
laukti (1) sekundžių
judėti [pirmyn v]
laukti kol <([y v] padėtis [mm v]) [math_greater_than v] [300]>
laukti (1) sekundžių
leistis ▶

loginis operatorius#

Loginis operatorius Boole blokas nurodo, ar loginė sąlyga tarp kelių reikšmių yra Teisinga, ar Klaidinga.

  • Teisinga – Loginė sąlyga įvykdyta.

  • Klaidinga – Loginė sąlyga neįvykdyta.

Loginio operatoriaus Būlio blokas.#
<<> [ir v] <>>

Parametras

Aprašymas

1 sąlyga

Pirmoji įvertinama Būlio sąlyga.

operatorius

Naudojamas loginis operatorius: ir pateikia Teisinga, jei abi sąlygos yra Teisingos. arba pateikia Teisinga, jei bent viena sąlyga yra Teisinga.

2 sąlyga

Antroji įvertinama Būlio sąlyga.

Pavyzdys

kai pradėta
[Display when buttons 5 and 7 are pressed together.]
laukti kol <<valdiklio mygtukas [5 v] paspaustas?> [ir v] <valdiklio mygtukas [7 v] paspaustas?>>
spausdinti [Both buttons pressed!] konsolėje ▶

ne operatorius#

Loginis blokas ne operatorius invertuoja loginio bloko rezultatą. Jei įvestis yra teisinga, gaunama klaidinga, o jei įvestis yra klaidinga, gaunama teisinga.

  • Teisinga – Įvesties sąlyga paprastai praneštų Klaidinga.

  • Klaidinga – Įvesties sąlyga paprastai būtų Teisinga.

Būlio blokas „Not“ operatorius.#
<ne <>>

Parametras

Aprašymas

būklė

Būlio sąlyga, kurią reikia apversti.

Pavyzdys

kai pradėta
[Move with controller while button 5 is not pressed.]
pakilti iki [500] [mm v] ▶
kol <ne <valdiklio mygtukas [5 v] paspaustas?>>
judėti su valdikliu
pabaiga
leistis ▶

diapazono operatorius#

Loginis diapazono operatorius praneša, ar reikšmė patenka į nurodytą diapazoną.

  • Teisinga – Jei reikšmė yra diapazone.

  • Klaidinga – Jei reikšmė yra už diapazono ribų.

Būlio logikos blokas yra diapazono operatorius.#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

Parametras

Aprašymas

pirmasis operatorius

Naudojamas palyginimo operatorius:

  • < — Mažiau nei
  • ≤ — Mažesnis arba lygus
  • — Didesnis nei
  • ≥ — Didesnis arba lygus

vertė

Vertė, kurią reikia patikrinti.

antrasis operatorius

Naudojamas palyginimo operatorius:

  • < — Mažiau nei
  • ≤ — Mažesnis arba lygus
  • — Didesnis nei
  • ≥ — Didesnis arba lygus

Pavyzdys

kai pradėta
[Hover at approximately 1000mm then land.]
pakilti iki [500] [mm v] ▶
kilti [aukštyn v]
laukti kol <[1000] [math_less_than v] (altitude in [mm v]) [math_less_than v] [1100]>
sklandyti
laukti (3) sekundžių
leistis ▶

pasirinkti atsitiktinai#

Pasirinkti atsitiktinį reporterio blokas pateikia atsitiktinį teigiamą arba neigiamą skaičių tarp minimumo ir maksimumo. Jis gali grąžinti ir minimumo, ir maksimumo reikšmę. Pavyzdžiui, pasirinkus nuo 1 iki 10, galima grąžinti bet kokį sveikąjį skaičių nuo 1 iki 10.

„Pick Random“ reporterio blokas.#
pasirinkti atsitiktinį nuo [1] iki [10]

Parametrai

Aprašymas

min.

Mažiausias įmanomas skaičius, kurį galima pasirinkti.

maks.

Didžiausias įmanomas skaičius, kurį galima pasirinkti.

Pavyzdžiai

Rodyti skaičių nuo 1 iki 10.#
kai pradėta
[Display a number between 1 and 10.]
spausdinti (pasirinkti atsitiktinį nuo [1] iki [10]) konsolėje ▶

Rodyti dešimtainį skaičių nuo 1 iki 10,5.#
kai pradėta
[Display a decimal number between 1 and 10.5.]
nustatyti spausdinimo tikslumą į [Visi skaitmenys v] konsolėje
spausdinti (pasirinkti atsitiktinį nuo [1] iki [10.5]) konsolėje ▶

apvalus skaičius#

Apvalinto skaičiaus ataskaitų blokas pateikia nurodytą skaičių, suapvalintą iki artimiausio sveikojo skaičiaus, laikantis standartinių apvalinimo taisyklių:

  • Jei dešimtainė trupmena yra 0,5 arba didesnė, skaičius suapvalinamas į didesnę pusę.

  • Jei dešimtainė trupmena yra mažesnė nei 0,5, skaičius apvalinamas į mažesnę pusę.

Apvalaus skaičiaus reporterio blokas.#
(apvalinti [0] iki [0] skaičių po kablelio)

Parametras

Aprašymas

skaičius

Skaičius, kurį reikia apvalinti.

dešimtainių vietų

Dešimtainių trupmenų skaičius, iki kurio reikia apvalinti.

Pavyzdys

Rodyti suapvalintą 10 / 3 rezultatą.#
kai pradėta
[Display the rounded result of 10 / 3.]
nustatyti spausdinimo tikslumą į [0.01 v] konsolėje
spausdinti (apvalinti ([10] [math_division v] [3]) iki [1] skaičių po kablelio) konsolėje ▶

matematikos funkcijos#

Matematinių funkcijų reporterio blokas taiko pasirinktą matematinę funkciją duotam skaičiui ir grąžina rezultatą. Jis palaiko tokias operacijas kaip absoliučioji vertė, apvalinimas, kvadratinės šaknys, trigonometrinės funkcijos, logaritmai ir laipsniškas kėlimas.

Matematikos funkcijų reporterių blokas.#
[abs v] iš [0]

Parametras

Aprašymas

funkcija

Matematinis veiksmas, kurį reikia atlikti su įvesties verte:

  • abs — Absoliuti vertė
  • floor — Apvalinama į mažesnę pusę
  • ceiling — Apvalinama į didesnę pusę
  • sqrt — Kvadratinė šaknis
  • sin — Sinusas
  • cos — Kosinusas
  • tan — Tangentas
  • asin — Atvirkštinis sinusas
  • acos — Atvirkštinis kosinusas
  • atan — Atvirkštinis tangentas
  • ln — Natūralusis logaritmas
  • log — Dešimtainis logaritmas
  • e^ — Eulerio skaičius, pakeltas laipsniu
  • 10^ — 10, pakeltas
  • — Grąžina skaičiaus neigiamą skaičių

skaičius

Skaičius, kuriam reikia taikyti funkciją.

Pavyzdys

Rodyti 16 kvadratinę šaknį.#
kai pradėta
[Display the square root of 16.]
spausdinti ([sqrt v] iš [16]) konsolėje ▶

atan2#

atan2 reporterio blokas pateikia atvirkštinę Y/X liestinę kaip kampą laipsniais, vaizduojantį kampą tarp teigiamos X ašies ir taško (X, Y).

atan2 blokas#
(atan2 iš x:[4] y:[3])

Parametras

Aprašymas

x

Taško horizontali padėtis, išmatuota nuo pradžios taško (0,0).

y

Vertikali taško padėtis, išmatuota nuo pradžios taško (0,0).

Pavyzdys

Apskaičiuokite kampą nuo dabartinės padėties (4, 3).#
kai pradėta
[Calculate the angle from current position (4, 3).]
spausdinti (atan2 iš x:[4] y:[3]) konsolėje ▶

likutis#

Likučio reporterio blokas pateikia dviejų reikšmių dalybos operacijos likutį.

„Remainder“ reporterių blokas.#
[0] / [0] liekana

Parametras

Aprašymas

dividendas

Skaičius, kurį reikia dalyti.

daliklis

Skaičius, iš kurio reikia dalyti.

Pavyzdys

Rodyti likusią 10 / 3 dalį.#
kai pradėta
[Display the remainder of 10 / 3.]
spausdinti ([10] / [3] liekana) konsolėje ▶

prisijungti#

prisijungimo reporterio blokas pateikia vieną eilutę, kuri sujungia dvi įvesties eilutes.

Prisijunkite prie reporterio bloko.#
(sujungti [apple] [banana])

parametras

aprašymas

1 eilutė

Pirmoji sujungta eilutė.

2 eilutė

Antroji eilutė, kurią reikia sujungti.

Pavyzdys

kai pradėta
[Display "VEXcode" on the Console.]
spausdinti (sujungti [VEX] [code]) konsolėje ▶

laiškas#

Raidės reporterio blokas praneša vieno simbolio eilutę iš nurodytos pozicijos duotoje eilutėje.

„Laiško“ reporterio blokas.#
([1] raidė iš [apple])

parametras

aprašymas

pozicija

Simbolio pozicija eilutėje (pradedant nuo 1).

styga

Eilutė, iš kurios reikia išgauti raidę.

Pavyzdys

kai pradėta
[Display the first letter of "drone".]
spausdinti ((1) raidė iš [drone]) konsolėje ▶

ilgis#

Ilgio reporterio blokas nurodo nurodytos eilutės simbolių skaičių, įskaitant tarpus.

Ilgio reporterio blokas.#
([apple] ilgis)

parametras

aprašymas

styga

Styga ilgiui matuoti.

Pavyzdys

kai pradėta
[Count the number of characters in "VEX Robotics".]
spausdinti ([VEX Robotics] ilgis) konsolėje ▶

sudėtyje yra#

Loginis blokas contains nurodo, ar nurodytoje eilutėje yra nurodytas žodis arba simbolis.

  • True – eilutėje yra tas konkretus žodis arba simbolis.

  • Klaidinga – eilutėje nėra to konkretaus žodžio ar simbolio.

Blokas „Contains Contains“ su loginėmis reikšmėmis.#
<[apple] turi [a]?>

parametras

aprašymas

styga

Pagrindinė eilutė, kurioje reikia ieškoti.

paieškos terminas

Žodis arba simbolis, kurį reikia patikrinti eilutėje.

Pavyzdys

kai pradėta
[Check if "robotics" contains "bot".]
jei <[robotics] turi [bot]?> tada
spausdinti [The word contains "bot".] konsolėje ▶
kitu atveju
spausdinti [Not found.] konsolėje ▶
pabaiga

konvertuoti#

konvertuoti reporterio blokas praneša skaičiaus, konvertuoto į nurodytą tipą, reikšmę kaip tekstą arba skaičių.

  • tekstas – konvertuoja skaičių į eilutę. Skaičiai turi būti eilutės formatu, kad veiktų su Eilutės operatoriaus blokais.

  • skaičius – konvertuoja skaičių į dešimtainę reikšmę.

„Convert“ reporterio blokas.#
(konvertuoti [0] į [tekstas v])

parametras

aprašymas

vertė

Skaičius, kurį reikia konvertuoti.

tipas

Tipas, į kurį reikia konvertuoti skaičių:

  • tekstas
  • skaičius

Pavyzdys

kai pradėta
[Add any number to 5.]
klausti [Give me a number.] ir laukti
spausdinti ((konvertuoti (atsakymas) į [skaičius v]) [math_plus v] [5]) konsolėje ▶