Control#

Introducción#

Los bloques de control de VEXcode IQ (2.ª generación) gestionan el flujo de un proyecto mediante la gestión de bucles, condiciones, retrasos y la detención de la ejecución. A continuación, se muestra una lista de los bloques disponibles:

  • wait – Pausa la ejecución durante una duración específica.

  • esperar hasta – Pausa la ejecución hasta que se cumpla una condición especificada.

  • repeat – Repite los bloques encerrados una cantidad específica de veces.

  • para siempre – Repite los bloques encerrados indefinidamente.

  • repetir hasta – Repite los bloques encerrados hasta que se cumpla una condición.

  • while – Repite los bloques encerrados mientras una condición siga siendo verdadera.

  • if – Ejecuta bloques cerrados 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 la ejecución del proyecto.

esperar#

El bloque espera se detiene durante un período de tiempo específico antes de pasar al siguiente bloque.

bloque de pila de espera#
esperar (1) segundos

Parámetros

Descripción

tiempo

La cantidad de tiempo de espera, como un entero positivo o decimal en segundos.

Ejemplo

Cuando se inicia, avanza durante un segundo y luego detiene todo movimiento.#
cuando empezó :: hat events
[Move forward for one second, then stop.]
unidad [adelante v]
esperar (1) segundos
deja de conducir

Esperar hasta#

El bloque esperar hasta pausa la ejecución hasta que se cumpla una condición especificada antes de continuar al siguiente bloque.

esperar hasta que se acumule el bloque#
esperar hasta <>

Parámetros

Descripción

condición

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

Ejemplo

Cuando se inicia, avanza hasta que se presiona la pantalla y luego detiene todo movimiento.#
cuando empezó :: hat events
[Move forward until a button is pressed, then stop.]
unidad [adelante v]
esperar hasta <¿Botón del cerebro [Check v] presionado?>
deja de conducir

repetir#

El bloque repetir ejecuta los bloques dentro de él una cantidad determinada de veces.

repetir bloque c#
repetir [10]
fin

Parámetros

Descripción

veces

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

Ejemplo

cuando empezó :: hat events
[Move in a square path.]
repetir [4]
unidad [adelante v] para [150] [mm v] ▶
girar [derecha v] por [90] grado ▶
fin

para siempre#

El bloque por siempre sigue ejecutando los bloques dentro de él una y otra vez sin detenerse.

bloque c para siempre#
para siempre
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.#
cuando empezó :: hat events
[Move in a square path forever.]
para siempre
unidad [adelante v] para [150] [mm v] ▶
girar [derecha v] por [90] grado ▶
fin

repetir hasta#

El bloque repetir hasta ejecuta los bloques incluidos repetidamente mientras la condición se evalúa como Falso.

repetir hasta bloquear#
repetir hasta <>
fin

Parámetros

Descripción

condición

Una expresión o variable que se evalúa antes de cada iteración. Si se evalúa como:

  • Falso - El bucle continúa
  • Verdadero - El bucle se detiene

Ejemplo

Cuando se inicia, mantiene todos los LED rojos hasta que se presiona la pantalla y luego los apaga.#
cuando empezó :: hat events
[Play a sound until a button is pressed.]
repetir hasta <¿Botón del cerebro [Check v] presionado?>
reproducir sonido [sirena v]
esperar (0.5) segundos
fin
esperar (0.5) segundos
reproducir sonido [Apagar v]

mientras#

El bloque while ejecuta los bloques incluidos repetidamente mientras la condición se evalúa como Verdadero.

mientras que el bloque c#
mientras <>
fin

Parámetros

Descripción

condición

Una expresión o variable que se evalúa antes de cada iteración. Si se evalúa como:

  • Verdadero - El bucle continúa
  • Falso - El bucle se detiene

Ejemplo

Al iniciarse, avanza 200 mm con todos los LED en verde. Los LED se apagan al detenerse el movimiento.#
cuando empezó :: hat events
[Play an alarm while the robot is moving.]
unidad [adelante v] para [300] [mm v] ◀ y no esperes
mientras <¿La unidad se está moviendo?>
reproducir sonido [alarma v]
esperar (0.3) segundos
fin

si#

El bloque if ejecuta el bloque de código incluido si la condición se evalúa como Verdadero.

si bloque#
si <> entonces
fin

Parámetros

Descripción

condición

Una expresión o variable que se evalúa al ejecutar la instrucción. Si se evalúa como:

  • Verdadero: Se ejecuta el código dentro del bloque if
  • Falso: Se omite el bloque

Ejemplo

Al iniciarse, comprueba continuamente si la pantalla está presionada. Si se presiona, el robot patea un objeto con fuerza media.#
cuando empezó :: hat events
[Turn in a circle if a button is pressed.]
para siempre
si <¿Botón del cerebro [Check v] presionado?> entonces
girar [derecha v] por (360) grado ▶
fin
deja de conducir
fin

si/de lo contrario#

El bloque if / else determina qué bloque de código adjunto se ejecuta en función de si la condición se evalúa como Verdadero o Falso.

Si entonces, si no, bloque#
si <> entonces
demás
fin

Parámetros

Descripción

condición

Una expresión o variable que se evalúa al ejecutar la instrucción. Si se evalúa como:

  • Verdadero - Se ejecuta el código dentro del bloque if
  • Falso - Se ejecuta el código dentro del bloque else

Ejemplo

Al iniciarse, comprueba continuamente si la pantalla está presionada. Si se presiona, muestra un emoji de emoción mirando hacia adelante; de lo contrario, muestra un emoji de aburrimiento mirando hacia adelante.#
cuando empezó :: hat events
[Repeatedly play a sound if a button is not pressed.]
para siempre
si <¿Botón del cerebro [Check v] presionado?> entonces
girar [derecha v] por (360) grado ▶
demás
reproducir sonido [sirena v]
esperar (0.5) segundos
fin

si/si no si/si no#

La estructura de bloque if / else if / else selecciona qué bloque de código adjunto se ejecuta en función de las condiciones:

  • if ejecuta su bloque de código si la condición se evalúa como Verdadero.

  • else if verifica condiciones adicionales solo si todas las condiciones anteriores se evaluaron como falsas. Se pueden usar varias sentencias else if.

  • de lo contrario, ejecuta su bloque de código solo si ninguna de las condiciones anteriores se evaluó como Verdadera.

si no si no bloque#
si <> entonces
de lo contrario si <> entonces
demás
fin

Parámetros

Descripción

condición

Una expresión o variable que se evalúa al ejecutar la instrucción. La primera condición que se evalúa como:

  • Verdadero - Determina qué bloque de código se ejecuta
  • Falso - Si ninguno es Verdadero, se ejecuta el bloque de código

Ejemplo

Cuando la posición del eje 1 del controlador cambia, se mueve hacia adelante si se lo empuja hacia adelante, se mueve hacia atrás si se lo tira hacia atrás y se detiene cuando está en punto muerto.#
cuando empezó :: hat events
[Turn right if the right button on the brain is pressed, left if the left is pressed, and stop if anything else is pressed.]
para siempre
si <¿Botón del cerebro [Derecha v] presionado?> entonces
girar [derecha v] por (90) grado ▶
de lo contrario si <¿Botón del cerebro [Izquierda v] presionado?> entonces
girar [izquierda v] por (90) grado ▶
demás
deja de conducir
fin
fin

romper#

El bloque break sale de un bucle inmediatamente.

romper bloque de pila#
romper

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

Cuando se inicia, los LED parpadean en rojo y verde cada 0,5 segundos hasta que se presiona la pantalla y luego se detiene.#
cuando empezó :: hat events
[Stop turning after a button is pressed.]
para siempre
turno [derecha v]
si <¿Botón del cerebro [Check v] presionado?> entonces
romper
fin
fin
deja de conducir
reproducir sonido [Apagar v]

detener el proyecto#

El bloque detener proyecto finaliza un proyecto en ejecución.

detener el bloqueo del proyecto#
detener el proyecto

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

Cuando se inicia, los LED parpadean en rojo y verde cada 0,5 segundos hasta que se presiona la pantalla, luego se detiene el proyecto.#
cuando empezó :: hat events
[Stop the project entirely after a button is pressed.]
para siempre
turno [derecha v]
si <¿Botón del cerebro [Check v] presionado?> entonces
detener el proyecto
fin
fin
reproducir sonido [Apagar v]