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.
([0] [math_plus v] [0])
Parametrit |
Kuvaus |
|---|---|
arvo 1 |
Ensimmäinen toiminnossa käytetty numero. |
operaattori |
Käytettävä matemaattinen operaattori:
|
arvo 2 |
Toinen toiminnossa käytetty numero. |
Esimerkki
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).
<[0] [math_equal v] [0]>
Parametri |
Kuvaus |
|---|---|
arvo 1 |
Ensimmäinen vertailtava arvo. |
operaattori |
Käytettävä vertailu:
|
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.
<<> [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 <>>
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.
<[0] [math_less_than v] [0] [math_less_than v] [0]>
Parametri |
Kuvaus |
|---|---|
ensimmäinen operaattori |
Käytettävä vertailuoperaattori:
|
arvo |
Tarkistettava arvo. |
toinen operaattori |
Käytettävä vertailuoperaattori:
|
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.
poimia satunnainen [1] – [10]
Parametrit |
Kuvaus |
|---|---|
min |
Pienin mahdollinen numero, joka voidaan valita. |
maks |
Suurin mahdollinen numero, joka voidaan valita. |
Esimerkkejä
kun käynnistetään
[Display a number between 1 and 10.]
tulosta (poimia satunnainen [1] – [10]) konsolilla ▶
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öristä [0] [0] desimaaliin)
Parametri |
Kuvaus |
|---|---|
määrä |
Pyöristettävä luku. |
desimaalien tarkkuus |
Desimaalien määrä, joihin pyöristetään. |
Esimerkki
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.
[abs v] luvusta [0]
Parametri |
Kuvaus |
|---|---|
toiminto |
Syötearvoon sovellettava matemaattinen operaatio:
|
määrä |
Luku, johon funktiota sovelletaan. |
Esimerkki
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.
(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
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.
jakojäännös [0] / [0]
Parametri |
Kuvaus |
|---|---|
osinko |
Jaettava luku. |
jakaja |
Luku, jolla jaetaan. |
Esimerkki
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.
(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.
(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.
(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ä.
<[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.
(muunna [0] tyypiksi [teksti v])
parametri |
kuvaus |
|---|---|
arvo |
Muunnettava luku. |
tyyppi |
Muunneltava tyyppi numerolle:
|
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 ▶