Control#
Introducción#
Los bloques de control en VEXcode IQ (1ª generación) gestionan el flujo de un proyecto mediante el manejo de bucles, condiciones y retrasos en la ejecución de los bloques.
Un bucle es cuando una computadora repite el mismo paso o grupo de pasos una y otra vez hasta que se le dice que se detenga. Una condición es una regla que la computadora verifica 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:
wait – Pausa los bloques para que no se ejecuten durante un tiempo específico.
espere hasta – Pausa los bloques para que no se ejecuten hasta que se cumpla una condición especificada.
repeat – Repite un conjunto de bloques un número específico de veces.
Forever: repite un conjunto de bloques indefinidamente.
repetir hasta – Repite un conjunto de bloques hasta que se cumpla una condición.
while: repite un conjunto de bloques mientras una condición sigue siendo cierta.
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 otra.
if / else if / else – Ejecuta diferentes conjuntos de bloques dependiendo de múltiples condiciones.
break: sale de un bucle de * * repeat * *, * * forever * *, * * repeat until * * o while de inmediato.
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 |
La cantidad de tiempo para esperar, como un número entero positivo o decimal en segundos. |
Ejemplo
cuando inicie
[Move forward for one second, then stop.]
conducir [adelante v]
esperar (1) segundos
detener conducción
esperar hasta#
El bloque de pila * * espera hasta que * * detenga la ejecución de los bloques hasta que se cumpla una condición especificada 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
[Move forward until a button is pressed, then stop.]
conducir [adelante v]
esperar hasta <¿botón [Verificar v] del Brain presionado?>
detener conducción
repetir#
El bloque repeat C ejecuta los bloques dentro de él un número determinado de veces.
repetir [10]
fin
Parámetros |
Descripción |
|---|---|
veces |
Un número entero que indica cuántas veces se ejecuta el bloque repetir. |
Ejemplo
cuando inicie
[Move in a square path.]
repetir [4]
conducir [adelante v] por [150] [mm v] ▶
girar [derecha v] por [90] grados ▶
fin
para siempre#
El bloque C * * Forever * * sigue ejecutando los bloques dentro de él una y otra vez sin detenerse.
por siempre
fin
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie
[Move in a square path forever.]
por siempre
conducir [adelante v] por [150] [mm v] ▶
girar [derecha v] por [90] grados ▶
fin
repetir hasta#
El bloque repetir hasta que C ejecute los bloques dentro de él repetidamente 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 bucle. Si es Falso, los bloques continúan repitiéndose. Si es Verdadero, el bucle se detendrá. |
Ejemplo
cuando inicie
[Play a sound until a button is pressed.]
repetir hasta <¿botón [Verificar v] del Brain presionado?>
reproducir sonido [sirena v]
esperar (0.5) segundos
fin
esperar (0.5) segundos
reproducir sonido [apagado v]
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 bucle. Si es Verdadero, los bloques continúan repitiéndose. Si es Falso, el bucle se detendrá. |
Ejemplo
cuando inicie
[Play an alarm while the robot is moving.]
conducir [adelante v] por [300] [mm v] ◀ y no esperar
mientras <¿conducción en movimiento?>
reproducir sonido [alarma v]
esperar (0.3) segundos
fin
si#
El bloque if C ejecuta los bloques en el interior si la condición es True.
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
[Turn in a circle if a button is pressed.]
por siempre
si <¿botón [Verificar v] del Brain presionado?> entonces
girar [derecha v] por (360) grados ▶
fin
detener conducción
fin
if / else#
El bloque if / else C determina qué conjunto de bloques se ejecuta en función de si la condición es True o False.
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
[Repeatedly play a sound if a button is not pressed.]
por siempre
si <¿botón [Verificar v] del Brain presionado?> entonces
girar [derecha v] por (360) grados ▶
si no
reproducir sonido [sirena v]
esperar (0.5) segundos
fin
if / else if / else#
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 True.
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 True.
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
[Turn right if the right button on the brain is pressed, left if the left is pressed, and stop if anything else is pressed.]
por siempre
si <¿botón [Right v] del Brain presionado?> entonces
girar [derecha v] por (90) grados ▶
si no, si <¿botón [Left v] del Brain presionado?> entonces
girar [izquierda v] por (90) grados ▶
si no
detener conducción
fin
fin
pausa#
El bloque de pila break * * 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 temprano en función de algo que sucede durante el proyecto, como un botón que se presiona o un sensor que detecta un objeto.
interrumpir
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie
[Stop turning after a button is pressed.]
por siempre
girar [derecha v]
si <¿botón [Verificar v] del Brain presionado?> entonces
interrumpir
fin
fin
detener conducción
reproducir sonido [apagado v]
detener proyecto#
El bloque de pila * * detener proyecto * * finaliza un proyecto en ejecución.
detener proyecto
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando inicie
[Stop the project entirely after a button is pressed.]
por siempre
girar [derecha v]
si <¿botón [Verificar v] del Brain presionado?> entonces
detener proyecto
fin
fin
reproducir sonido [apagado v]