Operátorok#

Bevezetés#

A VEXcode GO operátorblokkjai segítik a robotot a számokkal és szavakkal való munkában. Ezek a blokkok képesek matematikai problémákat megoldani, értékeket összehasonlítani, a feltételek igazának vagy hamisságának kiértékelésére, valamint karakterláncokkal dolgozni. A karakterláncok használhatók értékek és szavak nyomtatására.

Az alábbiakban az összes blokk listája található:

  • matematikai operátor — Összeadást, kivonást, szorzást vagy osztást hajt végre.

  • összehasonlító operátor — Két értéket hasonlít össze nagyobb, kisebb vagy egyenlő operátorokkal.

  • logikai operátor — Több feltételt értékel ki az és vagy az vagy operátor használatával.

  • nem operátor — Logikai értéket invertál.

  • tartomány-operátor — Ellenőrzi, hogy egy szám egy tartományon belül esik-e.

  • pick random — Véletlenszerű számot generál egy megadott tartományon belül.

  • round number — Egy számot a legközelebbi egész számra kerekít.

  • matematikai függvények — Olyan műveleteket alkalmaz, mint a négyzetgyökvonás, trigonometria, logaritmus és hatványozás.

  • remainder — Megadja az osztási művelet maradékát.

  • join — Két karakterláncot egyesít eggyé.

  • letter — Pozíció alapján kinyer egy karaktert egy karakterláncból.

  • length — Megadja a karakterláncban lévő karakterek számát.

  • tartalmaz — Ellenőrzi, hogy egy karakterlánc tartalmaz-e egy adott szót vagy karaktert.

  • convert — Számot szöveggé, egész számmá vagy tizedes törtté alakít.

matematikai operátor#

A matematikai operátor riporterblokk alapvető matematikai műveleteket végez az operátor két oldalán elhelyezett értékekkel. Az eredményt a projekt nyomtatási pontossága alapján adja vissza, amely alapértelmezés szerint 0 tizedesjegy, de a set print precision block segítségével módosítható.

A matematikai operátor riporter blokkja.#
([0] [math_plus v] [0])

Paraméterek

Leírás

value 1

A műveletben használt első szám.

operátor

A használandó matematikai operátor:

  • + — Összeadás
  • - — Kivonás
  • * — Szorzás
  • / — Osztás

value 2

A művelet során használt második szám.

Példa

amikor elindul :: hat events
[Perform basic addition and show two decimal places.]
nyomtatási pontosság beállítása [0.01 v] értékre
([10] [math_plus v] [10.5]) nyomtatása ▶

összehasonlító operátor#

Az összehasonlító operátor logikai blokkja azt jelzi, hogy két érték összehasonlítása Igaz vagy Hamis.

  • Igaz – Az összehasonlítás helyes (pl. 5 > 3 Igaz értéket ad vissza).

  • Hamis – Az összehasonlítás helytelen (pl. 2 ≥ 5 Hamis értéket ad vissza).

Az összehasonlító operátor Boole-blokkja.#
<[0] [math_equal v] [0]>

Paraméter

Leírás

value 1

Az első összehasonlítandó érték.

operátor

Az összehasonlításhoz használandó képlet:

  • = — Egyenlő
  • mal
  • < — Kisebb, mint
  • ≤ — Kisebb vagy egyenlő, mint
  • > — Nagyobb, mint
  • ≥ — Nagyobb vagy egyenlő, mint

value 2

A második összehasonlítandó érték.

Példa

amikor elindul :: hat events
[Build Used: Code Base 2.0]
[Turn right until the heading reaches 90 degrees.]
fordulás [jobbra v]
várakozás [0.5] másodpercig
várakozás amíg <(hajtás iránya fokban) [math_greater_than v] [90]>
hajtás leállítása

logikai operátor#

A logikai operátor Boole-blokk azt adja meg, hogy a több érték közötti logikai feltétel Igaz vagy Hamis.

  • Igaz – A logikai feltétel teljesül.

  • Hamis – A logikai feltétel nem teljesül.

A logikai operátor Boole-blokk.#
<<> [és v] <>>

Paraméter

Leírás

condition 1

Az első kiértékelendő logikai feltétel.

operátor

A használandó logikai operátor: Az és függvény Igaz értéket ad, ha mindkét feltétel Igaz. Az vagy függvény Igaz értéket ad, ha legalább az egyik feltétel Igaz.

condition 2

A második kiértékelendő logikai feltétel.

Példa

amikor elindul :: hat events
[Build Used: Super Code Base 2.0]
[Drive forward and pick up a red or green Disk.]
hajtás [előre v]
várakozás amíg <<szem észleli [piros v]?> [vagy v] <szem észleli [zöld v]?>>
hajtás leállítása
[mágnes v] energizálása [erősítés v] értékkel

nem operátor#

A nem operátor Boole-blokk invertálja a Boole-blokk eredményét. Ha a bemenet Igaz, akkor Hamis értéket, ha pedig Hamis, akkor Igaz értéket jelez.

  • Igaz – A bemeneti feltétel általában Hamis értéket jelezne.

  • Hamis – A bemeneti feltétel általában Igaz értéket jelezne.

A Not Operator Boole-blokk.#
<nem <>>

Paraméter

Leírás

állapot

Az invertálandó Boole-feltétel.

Példa

amikor elindul :: hat events
[Build Used: Code Base 2.0]
[Turn until the robot is facing left. ]
örökre
ha <nem <(hajtás iránya fokban) [math_greater_than v] [270]>> akkor
fordulás [jobbra v]
különben
hajtás leállítása

tartomány operátor#

A tartomány-operátor logikai blokkja jelzi, hogy egy érték egy megadott tartományon belül esik-e.

  • Igaz – Ha az érték a tartományon belül van.

  • Hamis – Ha az érték kívül esik a tartományon.

A Range Operator Boole-blokk.#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

Paraméter

Leírás

első operátor

A használandó összehasonlító operátor:

  • < - Kisebb, mint
  • ≤ - Kisebb vagy egyenlő, mint
  • — Nagyobb, mint
  • ≥ — Nagyobb vagy egyenlő, mint

érték

Az ellenőrizendő érték.

második operátor

A használandó összehasonlító operátor:

  • < — Kisebb, mint
  • ≤ — Kisebb vagy egyenlő, mint
  • — Nagyobb, mint
  • ≥ — Nagyobb vagy egyenlő, mint

Példa

amikor elindul :: hat events
[Build Used: Code Base 2.0]
[Turn and display when facing forward or back. ]
fordulás [jobbra v] irányba [360] fokkal ◀ és ne várjon
örökre
összes sor törlése
ha <[270] [math_greater_than v] (hajtás iránya fokban) [math_greater_than v] [90]> akkor
[Facing backward!] nyomtatása ▶
különben
[Facing forward!] nyomtatása ▶
vége
várakozás [1] másodpercig

véletlenszerű választás#

A véletlenszerű választás riporterblokk egy véletlenszerű pozitív vagy negatív számot jelent egy minimum és egy maximum között. Visszaadhatja mind a minimum, mind a maximum értéket. Például az 1-től 10-ig terjedő választás bármilyen egész számot visszaadhat 1-től 10-ig.

A Pick Random riporter blokk.#
véletlen szám [1]-tól [10]-ig

Paraméterek

Leírás

perc

A választható legkisebb szám.

max

A legmagasabb lehetséges szám, amit ki lehet választani.

Példák

amikor elindul :: hat events
[Display a number between 1 and 10.]
(véletlen szám [1]-tól [10]-ig) nyomtatása ▶

kerek szám#

A kerekített szám riporterblokk a megadott számot a legközelebbi egész számra kerekítve jelenti, a standard kerekítési szabályokat követve:

  • Ha a tizedesjegy 0,5 vagy nagyobb, a szám felfelé kerekíthető.

  • Ha a tizedesjegy kisebb, mint 0,5, a szám lefelé kerekíthető.

A Kerek Számú riporterblokk.#
([0] kerekítése [0] tizedesre)

Paraméter

Leírás

szám

A kerekítendő szám.

tizedesjegyek

A tizedesjegyek száma, amelyekre kerekíteni kell.

Példa

amikor elindul :: hat events
[Display the rounded result of 10 / 3.]
nyomtatási pontosság beállítása [0.01 v] értékre
(([10] [math_division v] [3]) kerekítése [1] tizedesre) nyomtatása ▶

matematikai függvények#

A matematikai függvények riporterblokkja egy kiválasztott matematikai függvényt alkalmaz egy adott számra, és visszaadja az eredményt. Támogatja az olyan műveleteket, mint az abszolút érték, kerekítés, négyzetgyökvonás, trigonometrikus függvények, logaritmusok és hatványozás.

A matematikai függvények riporterblokkja.#
[abs v] / [0]

Paraméter

Leírás

funkció

A bemeneti értékre alkalmazandó matematikai művelet:

  • abs - Abszolút érték
  • floor - Lefelé kerekítés
  • ceiling - Felfelé kerekítés
  • sqrt - Négyzetgyök
  • sin - Szinusz
  • cos - Koszinusz
  • tan - Tangens
  • asin - Inverz szinusz
  • acos - Inverz koszinusz
  • atan - Inverz tangens
  • ln - Természetes logaritmus
  • log - Tízes alapú logaritmus
  • e^ - Euler-szám
  • 10^- 10
  • negatív
    - A szám negatívját adja vissza

szám

Az a szám, amelyre a függvényt alkalmazni kell.

Példa

amikor elindul :: hat events
[Display the square root of 16.]
([sqrt v] / [16]) nyomtatása ▶

maradék#

A maradék riporterblokk két érték közötti osztási művelet maradékát jelenti.

A Remainder riporteri blokkja.#
([0] / [0] maradéka)

Paraméter

Leírás

osztalék

Az osztandó szám.

osztó

Az osztandó szám.

Példa

amikor elindul :: hat events
[Display the remainder of 10 / 3.]
([10] / [3] maradéka) nyomtatása ▶

csatlakozik#

A join reporter blokk egyetlen karakterláncot jelent, amely két bemeneti karakterláncot kombinál.

A Join riporter blokk.#
([apple] és [banana] összekapcsolása)

paraméter

leírás

string 1

Az elsőként egyesülő karakterlánc.

string 2

A második egyesítendő karakterlánc.

amikor elindul :: hat events
[Display "VEXcode" on the Console.]
([VEX] és [code] összekapcsolása) nyomtatása ▶

levél#

A betű riporterblokk egy karakterláncot jelent a megadott pozícióból a megadott karakterláncban.

A Levél riporteri blokkja.#
([apple] [1]. karaktere)

paraméter

leírás

pozíció

A karakter pozíciója a karakterláncban (1-től kezdődően).

húr

A karakterlánc, amelyből egy betűt ki kell vonni.

amikor elindul :: hat events
[Display the first letter of "Robot".]
([Robot] (1). karaktere) nyomtatása ▶

hossz#

A length reporter blokk a megadott karakterláncban lévő karakterek számát jelenti, beleértve a szóközöket is.

A Length riporter blokk.#
([apple] hossza :: operators)

paraméter

leírás

húr

A hosszának mérésére szolgáló húr.

Példa

amikor elindul :: hat events
[Count the number of characters in "VEX Robotics".]
([VEX Robotics] hossza :: operators) nyomtatása ▶

tartalmaz#

A tartalmaz logikai blokk visszaadja, hogy a megadott karakterlánc tartalmazza-e a megadott szót vagy karaktert.

  • Igaz – A karakterlánc tartalmazza az adott szót vagy karaktert.

  • Hamis – A karakterlánc nem tartalmazza az adott szót vagy karaktert.

A Tartalmazza a Boole-blokkot.#
<[apple] tartalmazza [a]?>

paraméter

leírás

húr

A fő karakterlánc, amelyben keresni kell.

keresési kifejezés

A karakterláncban keresendő szó vagy karakter.

Példa

amikor elindul :: hat events
[Check if "robotics" contains "bot".]
ha <[robotics] tartalmazza [bot]?> akkor
[The word contains "bot".] nyomtatása ▶
különben
[Not found.] nyomtatása ▶
vége

megtérít#

A convert reporter blokk egy megadott típusra konvertált szám értékét jelenti szövegként vagy számként.

  • szöveg – A számot karakterlánccá alakítja. A számoknak karakterlánc formátumban kell lenniük ahhoz, hogy működjenek a Karakterlánc-operátor blokkokkal.

  • szám – A számot decimális értékké alakítja.

A Convert riporter blokk.#
([0] konvertálása [szöveg v] típusra)

paraméter

leírás

érték

Az átváltandó szám.

típus

A szám konvertálásának típusa:

  • szöveg
  • szám

Példa

amikor elindul :: hat events
[Build Used: Code Base 2.0]
[Display the robot's heading as it turns.]
fordulás [jobbra v]
örökre
összes sor törlése
([Currently facing: ] és ((hajtás iránya fokban) konvertálása [szöveg v] típusra) összekapcsolása) nyomtatása ▶
várakozás [0.5] másodpercig