Operaattorit#

Johdanto#

VEXcode AIR:n operaattorilohkot auttavat dronea työskentelemään numeroiden ja sanojen kanssa. Nämä lohkot voivat ratkaista matemaattisia tehtäviä, vertailla arvoja, arvioida ehtojen totuutta tai epätosia ja työskennellä merkkijonojen kanssa. Merkkijonoja voidaan käyttää arvojen ja sanojen tulostamiseen.

Alla on luettelo saatavilla olevista lohkoista:

  • matematiikkaoperaattori — Suorittaa yhteen-, vähennys-, kerto- tai jakolaskun.

  • vertailuoperaattori — Vertailee kahta arvoa käyttämällä suurempi kuin-, pienempi kuin- tai yhtä suuri kuin -operaattoreita.

  • looginen operaattori — Arvioi useita ehtoja käyttämällä operaattoria ja tai tai.

  • ei operaattoria — Kääntää totuusarvon.

  • alueoperaattori — Tarkistaa, kuuluuko luku arvoalueelle.

  • pick random — Luo satunnaisluvun tietyltä alueelta.

  • pyöristää numeron — Pyöristää luvun lähimpään kokonaislukuun.

  • matematiikkafunktiot — Käyttää laskutoimituksia, kuten neliöjuuri, trigonometria, logaritmit ja potenssiinkorotus.

  • atan2 — Laskee Y/X-funktion käänteistangentin.

  • remainder — Ilmoittaa jakolaskun jäännöksen.

  • join – Yhdistää kaksi merkkijonoa yhdeksi.

  • letter – Poimii merkkijonosta merkin sijainnin perusteella.

  • length – Ilmoittaa merkkijonon merkkien määrän.

  • sisältää – Tarkistaa, sisältääkö merkkijono tietyn sanan tai merkin.

  • convert – Muuntaa luvun tekstiksi, kokonaisluvuksi tai desimaaliluvuksi.

matemaattinen operaattori#

Matematiikkaoperaattori-raporttilohko suorittaa peruslaskutoimituksia operaattorin molemmille puolille sijoitetuille arvoille. Se palauttaa tuloksen projektin tulostustarkkuuden perusteella, jonka oletusarvo on 0 desimaalia, mutta jota voidaan säätää set print precision on screen tai set print precision on console -lohkoilla.

Matemaattisen operaattorin raportointilohko.#
([0] [math_plus v] [0])

Parametrit

Kuvaus

arvo 1

Ensimmäinen toiminnossa käytetty numero.

operaattori

Käytettävä matemaattinen operaattori:

  • + - Yhteenlasku
  • - - Vähennyslasku
  • * - Kertolasku
  • / - Jakolasku

arvo 2

Toinen toiminnossa käytetty numero.

Esimerkki

Suorita peruslaskutoimitukset ja näytä kaksi desimaalia.#
kun käynnistetään
[Perform basic addition and show two decimal places.]
aseta tulostuksen tarkkuus [0.01 v] konsolilla
tulosta ([10] [math_plus v] [10.5]) konsolilla ▶

vertailuoperaattori#

Vertailuoperaattori Boolen lohko ilmoittaa, onko kahden arvon vertailu Tosi vai Epätosi.

  • Tosi – Vertailu on oikein (esim. 5 > 3 palauttaa Tosi).

  • Epätosi – Vertailu on virheellinen (esim. 2 ≥ 5 palauttaa Epätosi).

Vertailuoperaattorin looginen lohko.#
<[0] [math_equal v] [0]>

Parametri

Kuvaus

arvo 1

Ensimmäinen vertailtava arvo.

operaattori

Käytettävä vertailu:

  • = - Yhtä suuri kuin
  • < - Alle
  • ≤ - Pienempi tai yhtä suuri kuin
  • > - Suurempi kuin
  • ≥ - Suurempi tai yhtä suuri kuin

arvo 2

Toinen vertailtava arvo.

Esimerkki

kun käynnistetään
[Fly to position (0, 300, 500).]
nouse [500] [mm v] korkeuteen ▶
odota (1) sekuntia
liiku [eteenpäin v]
odota kunnes <([y v] sijainti yksikköinä [mm v]) [math_greater_than v] [300]>
odota (1) sekuntia
laske ▶

looginen operaattori#

Looginen operaattori (Totuusarvo) -lohko ilmoittaa, onko useiden arvojen välinen looginen ehto Tosi vai Epätosi.

  • Tosi – Looginen ehto täyttyy.

  • Epätosi – Looginen ehto ei täyty.

Looginen operaattori Boolen lohko.#
<<> [ja v] <>>

Parametri

Kuvaus

ehto 1

Ensimmäinen arvioitava Boolen ehto.

operaattori

Käytettävä looginen operaattori: ja raportoi Tosi, jos molemmat ehdot ovat Tosi. tai raportoi Tosi, jos vähintään yksi ehto on Tosi.

ehto 2

Toinen arvioitava loogisen arvo.

Esimerkki

kun käynnistetään
[Display when buttons 5 and 7 are pressed together.]
odota kunnes <<ohjaimen painike [5 v] painettu?> [ja v] <ohjaimen painike [7 v] painettu?>>
tulosta [Both buttons pressed!] konsolilla ▶

ei operaattori#

Boolen lohko ei-operaattori kääntää Boolen lohkon tuloksen. Jos syöte on Tosi, se raportoi Epätosi, ja jos syöte on Epätosi, se raportoi Tosi.

  • Tosi – Syöteehto raportoi normaalisti arvon Epätosi.

  • Epätosi – Syöteehto raportoi normaalisti arvon Tosi.

Ei-operaattori Boolen lohko.#
<ei <>>

Parametri

Kuvaus

kunto

Käännettävä Boolen ehto.

Esimerkki

kun käynnistetään
[Move with controller while button 5 is not pressed.]
nouse [500] [mm v] korkeuteen ▶
kun <ei <ohjaimen painike [5 v] painettu?>>
liiku ohjaimen avulla
Loppu
laske ▶

alueoperaattori#

Välimatkaoperaattori Boolen lohko ilmoittaa, onko arvo tietyn alueen sisällä.

  • Tosi – Jos arvo on annetulla alueella.

  • Epätosi – Jos arvo on alueen ulkopuolella.

Alueoperaattorin totuusarvolohko.#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

Parametri

Kuvaus

ensimmäinen operaattori

Käytettävä vertailuoperaattori:

  • < — Pienempi kuin
  • ≤ — Pienempi tai yhtä suuri kuin
  • — Suurempi kuin
  • ≥ — Suurempi tai yhtä suuri kuin

arvo

Tarkistettava arvo.

toinen operaattori

Käytettävä vertailuoperaattori:

  • < — Pienempi kuin
  • ≤ — Pienempi tai yhtä suuri kuin
  • — Suurempi kuin
  • ≥ — Suurempi tai yhtä suuri kuin

Esimerkki

kun käynnistetään
[Hover at approximately 1000mm then land.]
nouse [500] [mm v] korkeuteen ▶
nouse [ylös v]
odota kunnes <[1000] [math_less_than v] (altitude in [mm v]) [math_less_than v] [1100]>
leiju
odota (3) sekuntia
laske ▶

valitse satunnainen#

Valitse satunnainen -raporttilohko raportoi satunnaisen positiivisen tai negatiivisen luvun minimin ja maksimin väliltä. Se voi palauttaa sekä minimin että maksimin arvon. Esimerkiksi valitsemalla 1–10 voit palauttaa minkä tahansa kokonaisluvun 1:stä 10:een.

Pick Random -toimittajalohko.#
poimia satunnainen [1] – [10]

Parametrit

Kuvaus

min

Pienin mahdollinen numero, joka voidaan valita.

maks

Suurin mahdollinen numero, joka voidaan valita.

Esimerkkejä

Näytä luku väliltä 1–10.#
kun käynnistetään
[Display a number between 1 and 10.]
tulosta (poimia satunnainen [1] – [10]) konsolilla ▶

Näytä desimaaliluku väliltä 1–10,5.#
kun käynnistetään
[Display a decimal number between 1 and 10.5.]
aseta tulostuksen tarkkuus [Kaikki numerot v] konsolilla
tulosta (poimia satunnainen [1] – [10.5]) konsolilla ▶

pyöreä luku#

Pyöristysluvun raportointilohko raportoi annetun luvun pyöristettynä lähimpään kokonaislukuun noudattaen vakiopyöristyssääntöjä:

  • Jos desimaaliluku on 0,5 tai suurempi, luku pyöristetään ylöspäin.

  • Jos desimaaliluku on pienempi kuin 0,5, luku pyöristetään alaspäin.

Pyöreän numeron raportointilohko.#
(pyöristä [0] [0] desimaaliin)

Parametri

Kuvaus

määrä

Pyöristettävä luku.

desimaalien tarkkuus

Desimaalien määrä, joihin pyöristetään.

Esimerkki

Näytä luvun 10/3 pyöristetty tulos.#
kun käynnistetään
[Display the rounded result of 10 / 3.]
aseta tulostuksen tarkkuus [0.01 v] konsolilla
tulosta (pyöristä ([10] [math_division v] [3]) [1] desimaaliin) konsolilla ▶

matemaattiset funktiot#

Matematiikkafunktioiden raportointilohko soveltaa valittua matemaattista funktiota annettuun lukuun ja palauttaa tuloksen. Se tukee toimintoja, kuten itseisarvoa, pyöristystä, neliöjuuria, trigonometrisiä funktioita, logaritmeja ja potenssiinkorotusta.

Matemaattisten funktioiden raportointilohko.#
[abs v] luvusta [0]

Parametri

Kuvaus

toiminto

Syötearvoon sovellettava matemaattinen operaatio:

  • abs — Itseisarvo
  • floor — Pyöristää alaspäin
  • ceiling — Pyöristää ylöspäin
  • sqrt — Neliöjuuri
  • sin — Sini
  • cos — Kosini
  • tan — Tangentti
  • asin — Käänteinen sini
  • acos — Käänteinen kosini
  • atan — Käänteinen tangentti
  • ln — Luonnollinen logaritmi
  • log — Kymmenkantainen logaritmi
  • e^ — Eulerin luku korotettuna potenssiin
  • 10^ — 10 korotettuna potenssiin
  • negatiivinen — Palauttaa luvun negatiivisen luvun

määrä

Luku, johon funktiota sovelletaan.

Esimerkki

Näytä luvun 16 neliöjuuri.#
kun käynnistetään
[Display the square root of 16.]
tulosta ([sqrt v] luvusta [16]) konsolilla ▶

atan2#

atan2-raporttilohko raportoi Y/X-akselin käänteisen tangentin asteina, mikä edustaa positiivisen X-akselin ja pisteen (X, Y) välistä kulmaa.

atan2-lohko#
(x:n atan2:[4] y:[3])

Parametri

Kuvaus

x

Pisteen vaakasuora sijainti mitattuna origosta (0,0).

y

Pisteen pystysuora sijainti mitattuna origosta (0,0).

Esimerkki

Laske kulma nykyisestä sijainnista (4, 3).#
kun käynnistetään
[Calculate the angle from current position (4, 3).]
tulosta (x:n atan2:[4] y:[3]) konsolilla ▶

loppuosa#

Jäännös-raportointilohko raportoi kahden arvon välisen jakolaskun jakojäännösosan.

Remainder-toimittajan blokki.#
jakojäännös [0] / [0]

Parametri

Kuvaus

osinko

Jaettava luku.

jakaja

Luku, jolla jaetaan.

Esimerkki

Näytä loput luvusta 10 / 3.#
kun käynnistetään
[Display the remainder of 10 / 3.]
tulosta (jakojäännös [10] / [3]) konsolilla ▶

liittyä#

liittymis-reportterilohko raportoi yhden merkkijonon, joka yhdistää kaksi syötemerkkijonoa.

Liity toimittajan lohkoon.#
(yhdistä [apple] [banana])

parametri

kuvaus

merkkijono 1

Ensimmäinen yhdistettävä merkkijono.

merkkijono 2

Toinen yhdistettävä merkkijono.

Esimerkki

kun käynnistetään
[Display "VEXcode" on the Console.]
tulosta (yhdistä [VEX] [code]) konsolilla ▶

kirje#

Kirjain-raportointilohko raportoi yksimerkkijonon annetun merkkijonon määritetystä kohdasta.

Kirjetoimittajan lohko.#
(kirjain [1] merkkijonossa [apple])

parametri

kuvaus

asema

Merkin sijainti merkkijonossa (alkaen luvusta 1).

jono

Merkkijono, josta kirjain poimitaan.

Esimerkki

kun käynnistetään
[Display the first letter of "drone".]
tulosta (kirjain (1) merkkijonossa [drone]) konsolilla ▶

pituus#

Pituus-raportointilohko raportoi määritetyn merkkijonon merkkien määrän välilyönnit mukaan lukien.

Pituus-reportterilohko.#
(listan [apple] pituus)

parametri

kuvaus

jono

Merkkijono, jolla mitataan sen pituus.

Esimerkki

kun käynnistetään
[Count the number of characters in "VEX Robotics".]
tulosta (listan [VEX Robotics] pituus) konsolilla ▶

sisältää#

Boolen contains-lohko ilmoittaa, sisältääkö annettu merkkijono annetun sanan tai merkin.

  • Tosi – Merkkijono sisältää kyseisen sanan tai merkin.

  • Epätosi – Merkkijono ei sisällä kyseistä sanaa tai merkkiä.

Sisältää Boolen arvon lohkon.#
<[apple] sisältää [a]?>

parametri

kuvaus

jono

Pääasiallinen merkkijono, josta etsitään.

hakutermi

Merkkijonon sisältä tarkistettava sana tai merkki.

Esimerkki

kun käynnistetään
[Check if "robotics" contains "bot".]
jos <[robotics] sisältää [bot]?> niin
tulosta [The word contains "bot".] konsolilla ▶
muuten
tulosta [Not found.] konsolilla ▶
Loppu

muuntaa#

convert-raportointilohko raportoi määritettyyn tyyppiin muunnetun luvun arvon joko tekstinä tai numerona.

  • teksti – Muuntaa luvun merkkijonoksi. Numeroiden on oltava merkkijonomuodossa, jotta ne toimivat Merkkijono-operaattori-lohkojen kanssa.

  • luku – Muuntaa luvun desimaaliluvuksi.

Convert-reportterilohko.#
(muunna [0] tyypiksi [teksti v])

parametri

kuvaus

arvo

Muunnettava luku.

tyyppi

Muunneltava tyyppi numerolle:

  • teksti
  • numero

Esimerkki

kun käynnistetään
[Add any number to 5.]
kysy [Give me a number.] ja odota
tulosta ((muunna (vastaus) tyypiksi [numero v]) [math_plus v] [5]) konsolilla ▶