Control#

Introducción#

Los bloques de control en VEXcode IQ (2.ª generación) 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, un robot puede avanzar si un sensor 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.

bloque de pila de espera#
wait (1) seconds

Parámetros

Descripción

tiempo

El tiempo de espera, expresado como un número entero positivo o decimal en segundos.

Ejemplo

Cuando se inicia, avanza durante un segundo y luego detiene todo movimiento.#
when started
[Move forward for one second, then stop.]
drive [forward v]
wait (1) seconds
stop driving

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 que se acumule el bloque#
wait until <>

Parámetros

Descripción

condición

La condición que debe cumplirse antes de pasar al siguiente bloque.

Ejemplo

Una vez iniciado, avanza hasta que se pulsa el botón de Comprobación Cerebral, momento en el que detiene todo movimiento.#
when started
[Move forward until a button is pressed, then stop.]
drive [forward v]
wait until <Brain [Check v] button pressed?>
stop driving

repetir#

El bloque repeat de C ejecuta los bloques que contiene un número determinado de veces.

repetir bloque c#
repeat [10]
fin

Parámetros

Descripción

veces

Un número entero que establece cuántas veces se ejecuta el bloque repetir.

Ejemplo

when started
[Move in a square path.]
repeat [4]
drive [forward v] for [150] [mm v] ▶
turn [right v] for [90] degrees ▶
fin

para siempre#

El bloque C para siempre sigue ejecutando los bloques que contiene una y otra vez sin parar.

bloque c para siempre#
forever
fin

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

Cuando se inicia, se mueve continuamente en una trayectoria cuadrada avanzando 50 mm y girando 90 grados a la derecha en un bucle infinito.#
when started
[Move in a square path forever.]
forever
drive [forward v] for [150] [mm v] ▶
turn [right v] for [90] degrees ▶
fin

repetir hasta#

El bloque repetir hasta C ejecuta repetidamente los bloques que contiene mientras no se cumpla la condición especificada.

repetir hasta bloquear#
repeat until <>
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

Al encenderse, reproduce una sirena hasta que se pulsa el botón de comprobación del sistema, momento en el que reproduce el sonido de apagado.#
when started
[Play a sound until a button is pressed.]
repeat until <Brain [Check v] button pressed?>
play sound [siren v]
wait (0.5) seconds
fin
wait (0.5) seconds
play sound [power down v]

mientras#

El bloque while de C ejecuta repetidamente los bloques que contiene mientras se cumpla la condición especificada.

mientras que el bloque c#
while <>
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

Al arrancar, emite una alarma mientras el sistema de transmisión está en movimiento.#
when started
[Play an alarm while the robot is moving.]
drive [forward v] for [300] [mm v] ◀ and don't wait
while <drive is moving?>
play sound [alarm v]
wait (0.3) seconds
fin

si#

El bloque if de C ejecuta los bloques que contiene si la condición es verdadera.

si bloque#
if <> then
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

Al encenderse, comprueba continuamente si se ha pulsado el botón de Control Cerebral. Si se pulsa, el robot gira a la derecha.#
when started
[Turn in a circle if a button is pressed.]
forever
if <Brain [Check v] button pressed?> then
turn [right v] for (360) degrees ▶
fin
stop driving
fin

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, bloque#
if <> then
else
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

Al encenderse, gira repetidamente a la derecha cuando se pulsa el botón de comprobación cerebral; de lo contrario, emite un sonido de sirena.#
when started
[Repeatedly play a sound if a button is not pressed.]
forever
if <Brain [Check v] button pressed?> then
turn [right v] for (360) degrees ▶
else
play sound [siren v]
wait (0.5) seconds
fin

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 no si no bloque#
if <> then
else if <> then
else
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

Al encenderse, gira a la derecha si se pulsa el botón Cerebro Derecha, gira a la izquierda si se pulsa el botón Cerebro Izquierda y se detiene en caso contrario.#
when started
[Turn right if the right button on the brain is pressed, left if the left is pressed, and stop if anything else is pressed.]
forever
if <Brain [Right v] button pressed?> then
turn [right v] for (90) degrees ▶
else if <Brain [Left v] button pressed?> then
turn [left v] for (90) degrees ▶
else
stop driving
fin
fin

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.

romper bloque de pila#
break

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

Al arrancar, gira hasta que se pulsa el botón de comprobación del sistema, momento en el que deja de girar y reproduce el sonido de apagado.#
when started
[Stop turning after a button is pressed.]
forever
turn [right v]
if <Brain [Check v] button pressed?> then
break
fin
fin
stop driving
play sound [power down v]

detener el proyecto#

El bloque de pila stop project finaliza un proyecto en ejecución.

detener el bloqueo del proyecto#
stop project

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

Una vez iniciado, gira hasta que se pulsa el botón de comprobación cerebral y, a continuación, detiene el proyecto.#
when started
[Stop the project entirely after a button is pressed.]
forever
turn [right v]
if <Brain [Check v] button pressed?> then
stop project
fin
fin
play sound [power down v]