Valdymas#

Įvadas#

„VEXcode V5“ valdymo blokai valdo projekto eigą, tvarkydami ciklus, sąlygas ir atidėdami blokų vykdymą.

Ciklas yra tada, kai kompiuteris kartoja tą patį veiksmą arba veiksmų grupę vėl ir vėl, kol jam nurodoma sustoti. Sąlyga yra taisyklė, kurią kompiuteris tikrina, kad nuspręstų, ką daryti toliau. Pavyzdžiui, robotas gali judėti į priekį, jei jutiklis aptinka objektą.

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

  • laukti – Pristabdo blokų vykdymą tam tikram laikotarpiui.

  • laukti iki – Sustabdo blokų vykdymą, kol įvykdoma nurodyta sąlyga.

  • repeat – Pakartoja blokų rinkinį tam tikrą skaičių kartų.

  • forever – Kartoja blokų rinkinį neribotą laiką.

  • repeat until – Kartoja blokų rinkinį, kol įvykdoma sąlyga.

  • while – Kartoja blokų rinkinį, kol sąlyga lieka teisinga.

  • if – Paleidžia blokų rinkinį, jei sąlyga yra teisinga.

  • if / else – Paleidžia vieną blokų rinkinį, jei sąlyga teisinga, kitu atveju – kitą.

  • if / else if / else – Paleidžia skirtingus blokų rinkinius, atsižvelgdami į kelias sąlygas.

  • break – Nedelsiant išeina iš repeat, forever, repeat until arba while ciklo.

  • stop project – Baigia projektą.

laukti#

Laukimo blokas pristabdo blokų vykdymą tam tikram laikui, prieš pereinant prie kito bloko.

laukimo kamino blokas#
laukti (1) sekundžių

Parametrai

Aprašymas

laikas

Laukimo laikas, nurodytas kaip teigiamas sveikasis skaičius arba dešimtainė trupmena sekundėmis.

Pavyzdys

Pajudėjęs juda į priekį vieną sekundę, o tada sustoja.#
kai pradėta
[Move forward for one second, then stop.]
važiuoti [pirmyn v]
laukti (1) sekundžių
sustabdyti važiavimą

laukti iki#

Stekavimo blokas laukti, kol pristabdo blokų vykdymą, kol įvykdoma nurodyta sąlyga prieš pereinant prie kito bloko.

palaukite, kol bus blokuojamas krūvos blokas#
laukti kol <>

Parametrai

Aprašymas

būklė

Sąlyga, kurią reikia įvykdyti prieš pereinant prie kito bloko.

Pavyzdys

Paleidus, juda į priekį, kol paspaudžiamas ekranas, tada sustoja visas judėjimas.#
kai pradėta
[Move forward until the screen is pressed, then stop.]
važiuoti [pirmyn v]
laukti kol <ekranas paspaustas?>
sustabdyti važiavimą

kartoti#

Pakartojimo C blokas atkartoja jame esančius blokus nustatytą skaičių kartų.

pakartokite C bloką#
kartoti [10]
pabaiga

Parametrai

Aprašymas

kartus

Sveikasis skaičius, nustatantis, kiek kartų bus kartojamas blokas pakartoti.

Pavyzdys

kai pradėta
[Move in a square path.]
kartoti [4]
važiuoti [pirmyn v] per [150] [mm v] ▶
sukti [dešinėn v] per [90] laipsnių ▶
pabaiga

amžinai#

Amžinai veikiantis C blokas be perstojo paleidžia jame esančius blokus vėl ir vėl.

amžinai C blokas#
amžinai
pabaiga

Parametrai

Aprašymas

Šis blokas neturi parametrų.

Pavyzdys

Paleidus, nuolat juda kvadratine trajektorija, judėdamas į priekį 50 mm ir pasisukdamas į dešinę 90 laipsnių kampu begalinėje kilpoje.#
kai pradėta
[Move in a square path forever.]
amžinai
važiuoti [pirmyn v] per [150] [mm v] ▶
sukti [dešinėn v] per [90] laipsnių ▶
pabaiga

kartoti, kol#

C blokas kartoti iki pakartotinai vykdo jame esančius blokus, kol neįvykdoma nurodyta sąlyga.

kartoti iki bloko#
kartoti kol <>
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas prieš kiekvieną ciklą. Jei jis yra Klaidingas, blokai kartojasi toliau. Jei jis yra Teisinga, ciklas sustos.

Pavyzdys

Įjungus, visi šviesos diodai šviečia raudonai, kol paspaudžiamas ekranas, tada jie užgęsta.#
kai pradėta
[Turn until the screen is pressed.]
kartoti kol <ekranas paspaustas?>
sukti [dešinėn v]
pabaiga
sustabdyti važiavimą

kol#

while C bloke esantys blokai kartojasi, kol tenkinama nurodyta sąlyga.

kol C blokas#
kol <>
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas prieš kiekvieną ciklą. Jei jis yra True, blokai toliau kartojasi. Jei False, ciklas sustos.

Pavyzdys

Blokų krūva, prasidedanti bloku „when started“, po kurio eina komentarų blokas „Rodyti laiką po 2 sekundžių“. Blokas „wait until“ pristabdo vykdymą, kol laikmatis pasiekia arba viršija dvi sekundes. Kai ši sąlyga įvykdoma, spausdinimo blokas ekrane rodo laikmačio reikšmę.#
kai pradėta
[Display the time for one minute.]
kol <(laikmatis sekundėmis) [math_less_than v] [60]>
išvalyti ekraną
nustatyti žymeklį į eilutę [1] stulpelį [1] ekrane
spausdinti (laikmatis sekundėmis) ekrane ▶

jei#

C blokas if vykdo jame esančius blokus, jei sąlyga yra True.

jei blokas#
jei <> tada
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas vykdant sakinį. Jei jis yra True, bus vykdomi blokai if bloke. Jei jis yra False, blokai praleidžiami.

Pavyzdys

Paleidus, nuolat tikrina, ar paspaustas ekranas. Paspaudus, robotas vidutine jėga spiria į objektą.#
kai pradėta
[Turn in a circle if the screen is pressed.]
amžinai
jei <ekranas paspaustas?> tada
sukti [dešinėn v] per [360] laipsnių ▶
pabaiga
sustabdyti važiavimą
pabaiga

jei / kitaip#

C blokas if / else nustato, kuris blokų rinkinys vykdomas, atsižvelgiant į tai, ar sąlyga yra True, ar False.

jei tada kitaip blokuoti#
jei <> tada
kitu atveju
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas vykdant sakinį. Jei jis yra True, bus vykdomi blokai if bloke. Jei False, bus vykdomi blokai else bloke.

Pavyzdys

jei tada kitaip blokuoti#
kai pradėta
[Display a message if the screen is being pressed.]
amžinai
išvalyti ekraną
nustatyti žymeklį į eilutę [1] stulpelį [1] ekrane
jei <ekranas paspaustas?> tada
spausdinti [Pressed!] ekrane ▶
kitu atveju
spausdinti [Not pressed!] ekrane ▶
pabaiga

jei / kitaip jei / kitaip#

Išplečiamas C blokas if / else if / else pasirenka, kuris blokų rinkinys bus vykdomas pagal sąlygas:

  • if vykdo savo kodo bloką, jei sąlyga įvertinama kaip True.

  • else if tikrina papildomas sąlygas tik tuo atveju, jei visos ankstesnės sąlygos įvertintos kaip False. Galima naudoti kelis else if teiginius.

  • else vykdo savo kodo bloką tik tuo atveju, jei nė viena iš ankstesnių sąlygų nebuvo įvertinta kaip True.

jei kitaip jei kitaip blokuoti#
jei <> tada
kitu atveju jei <> tada
kitu atveju
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas vykdant sakinį. Pirmoji sąlyga, kuri yra True, paleidžia tą blokų rinkinį. Jei visos sąlygos įvertinamos kaip False, bus paleisti blokai, esantys else bloke.

Pavyzdys

jei tada kitaip blokuoti#
kai pradėta
[Move the robot based on the Controller button is being pressed.]
amžinai
jei <[Controller1 v] [▶ v] paspaustas?> tada
sukti [dešinėn v]
kitu atveju jei <[Controller1 v] [◀ v] paspaustas?> tada
sukti [kairėn v]
kitu atveju
sustabdyti važiavimą
pabaiga

pertrauka#

Pertraukos blokas iš karto išeina iš ciklo. Šį bloką galima naudoti repeat, repeat until, while ir forever blokų viduje. Pertraukos blokas naudingas, kai ciklą reikia sustabdyti anksčiau dėl kažko, kas įvyksta projekto metu, pavyzdžiui, paspaudus mygtuką arba jutikliui aptikus objektą.

pertraukos kamino blokas#
pertraukti

Parametrai

Aprašymas

Šis blokas neturi parametrų.

Pavyzdys

Pajudėjus, sukasi į dešinę, kol paspaudžiamas ekranas, tada sustoja.#
kai pradėta
[Stop turning after the screen is pressed.]
amžinai
sukti [dešinėn v]
jei <ekranas paspaustas?> tada
pertraukti
pabaiga
pabaiga
sustabdyti važiavimą

sustabdyti projektą#

Blokas „stop project“ užbaigia vykdomą projektą.

sustabdyti projekto bloką#
sustabdyti projektą

Parametrai

Aprašymas

Šis blokas neturi parametrų.

Pavyzdys

Paleidus, sukasi į dešinę, kol paspaudžiamas ekranas, tada sustabdo projektą.#
kai pradėta
[Stop the project entirely after the screen is pressed.]
amžinai
sukti [dešinėn v]
jei <ekranas paspaustas?> tada
sustabdyti projektą
pabaiga
pabaiga