Control#
Introducción#
Los bloques de control en VEXcode 123 gestionan el flujo de un proyecto manejando bucles, condiciones y retrasando la ejecución de otros bloques.
Un bucle se produce cuando un ordenador repite el mismo paso o grupo de pasos una y otra vez hasta que se le indica que se detenga. Una condición es una regla que el ordenador comprueba para decidir qué hacer a continuación. Por ejemplo, avanzar si el sensor ocular detecta un objeto.
A continuación se muestra una lista de bloques disponibles:
espera – Pausa la ejecución de bloques durante una duración específica.
esperar hasta – Pausa la ejecución de los bloques hasta que se cumpla una condición específica.
repetir – Repite un conjunto de bloques un número específico de veces.
para siempre – Repite un conjunto de bloques indefinidamente.
repetir hasta – Repite un conjunto de bloques hasta que se cumpla una condición.
mientras – Repite un conjunto de bloques mientras una condición permanece verdadera.
if – Ejecuta un conjunto de bloques si una condición es verdadera.
if / else – Ejecuta un conjunto de bloques si una condición es verdadera, de lo contrario ejecuta otro.
if / else if / else – Ejecuta diferentes conjuntos de bloques dependiendo de múltiples condiciones.
break – Sale inmediatamente de un bucle repeat, forever, repeat until o while.
detener proyecto – Finaliza el proyecto.
esperar#
El bloque de pila wait pausa la ejecución de los bloques durante un tiempo determinado antes de pasar al siguiente bloque.
esperar (1) segundos
Parámetros |
Descripción |
|---|---|
tiempo |
El tiempo de espera, expresado como un número entero positivo o decimal en segundos. |
Ejemplo
cuando inicie :: hat events
[Drive forward then stop.]
conducir [adelante v]
esperar (2) segundos
detener conducción
esperar hasta#
El bloque de pila esperar hasta pausa la ejecución de los bloques hasta que se cumpla una condición específica antes de pasar al siguiente bloque.
esperar hasta <>
Parámetros |
Descripción |
|---|---|
condición |
La condición que debe cumplirse antes de pasar al siguiente bloque. |
Ejemplo
cuando inicie :: hat events
[Drive forward when the sound button is pressed.]
esperar hasta <¿[soundIcon v] presionado?>
conducir [adelante v] por [200] [mm v]
repetir#
El bloque repeat de C ejecuta los bloques que contiene un número determinado de veces.
repetir [10]
fin
Parámetros |
Descripción |
|---|---|
veces |
Un número entero que establece cuántas veces se ejecuta el bloque repetir. |
Ejemplo
cuando inicie :: hat events
[Drive in a square pattern.]
repetir [4]
conducir [adelante v] por [200] [mm v]
girar [derecha v] por [90] grados
para siempre#
El bloque C para siempre sigue ejecutando los bloques que contiene una y otra vez sin parar.
por siempre
fin
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Blink LED light in a pattern.]
por siempre
brillar [verde v]
esperar [0.5] segundos
brillar [apagado v]
esperar [0.5] segundos
repetir hasta#
El bloque repetir hasta C ejecuta repetidamente los bloques que contiene mientras no se cumpla la condición especificada.
repetir hasta <>
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se comprueba antes de cada iteración del bucle. Si es falsa, los bloques se repiten continuamente. Si es verdadera, el bucle se detiene. |
Ejemplo
cuando inicie :: hat events
[Blink LED light until the sound button is pressed.]
repetir hasta <¿[soundIcon v] presionado?>
brillar [verde v]
esperar [0.5] segundos
brillar [apagado v]
esperar [0.5] segundos
mientras#
El bloque while de C ejecuta repetidamente los bloques que contiene mientras se cumpla la condición especificada.
mientras <>
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se comprueba antes de cada iteración del bucle. Si es Verdadera, los bloques se repiten. Si es Falsa, el bucle se detiene. |
Ejemplo
cuando inicie :: hat events
[Turn the robot around.]
mientras <(rumbo de conducción en grados) [math_less_than v] [180]>
girar [derecha v]
fin
detener conducción
si#
El bloque if de C ejecuta los bloques que contiene si la condición es verdadera.
si <> entonces
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se comprueba al ejecutar la instrucción. Si es Verdadera, se ejecutarán los bloques dentro del bloque if. Si es Falsa, los bloques se omiten. |
Ejemplo
cuando inicie :: hat events
[Drive forward whenever the sound button is pressed.]
por siempre
si <¿[soundIcon v] presionado?> entonces
conducir [adelante v] por [200] [mm v]
si/de lo contrario#
El bloque C if / else determina qué conjunto de bloques se ejecuta en función de si la condición es verdadera o falsa.
si <> entonces
si no
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se comprueba al ejecutar la instrucción. Si es Verdadera, se ejecutarán los bloques dentro del bloque if. Si es Falsa, se ejecutarán los bloques dentro del bloque else. |
Ejemplo
cuando inicie :: hat events
[Drive forward until a crash.]
por siempre
si <¿choque detectado?> entonces
detener conducción
si no
conducir [adelante v] por [200] [mm v]
si/si no si/si no#
El bloque C expandible if / else if / else selecciona qué conjunto de bloques se ejecuta en función de las condiciones:
if ejecuta su bloque de código si la condición se evalúa como Verdadera.
else if comprueba condiciones adicionales solo si todas las condiciones anteriores se evaluaron como falsas. Se pueden utilizar varias sentencias else if.
else ejecuta su bloque de código solo si ninguna de las condiciones anteriores se evaluó como Verdadera.
si <> entonces
si no, si <> entonces
si no
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se comprueba al ejecutar la instrucción. La primera condición que sea Verdadera ejecuta ese conjunto de bloques. Si todas las condiciones se evalúan como Falsas, se ejecutarán los bloques dentro del bloque else. |
Ejemplo
cuando inicie :: hat events
[Turn right for the right button, left for the left button.]
por siempre
si <¿[ifbuttonright v] presionado?> entonces
girar [derecha v]
si no, si <¿[ifbuttonleft v] presionado?> entonces
girar [izquierda v]
si no
detener conducción
romper#
El bloque break de la pila sale de un bucle inmediatamente. Este bloque se puede usar dentro de los bloques repeat, repeat until, while y forever. Break es útil cuando un bucle necesita detenerse prematuramente debido a algún evento que ocurre durante el proyecto, como presionar un botón o que un sensor detecte un objeto.
interrumpir
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Flash the LED until the sound button is pressed.]
por siempre
brillar [verde v]
esperar [0.5] segundos
brillar [azul v]
esperar [0.5] segundos
si <¿[soundIcon v] presionado?> entonces
interrumpir
detener el proyecto#
El bloque de pila stop project finaliza un proyecto en ejecución.
detener proyecto
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie :: hat events
[Stop the project after a crash.]
por siempre
conducir [adelante v]
si <¿choque detectado?> entonces
detener proyecto