Operadores#

Introducción#

Los bloques Operadores en VEXcode AIM gestionan cálculos matemáticos y manipulación de cadenas. Estos bloques permiten realizar operaciones aritméticas, evaluar condiciones y procesar texto. A continuación, se muestra una lista de los bloques disponibles:

Matemáticas – Realizar cálculos y evaluar condiciones numéricas.

  • math operator – Performs addition, subtraction, multiplication, or division.

  • comparison operator – Compares two values using greater than, less than, or equal operators.

  • logical operator – Evaluates multiple conditions using and or or.

  • not operator – Inverts a Boolean value.

  • range operator – Checks if a number falls within a range.

  • pick random – Generates a random number within a specified range.

  • round number – Rounds a number to the nearest whole number.

  • math functions – Applies operations such as square root, trigonometry, logarithms, and exponentiation.

  • atan2 – Computes the inverse tangent of Y/X.

  • remainder – Returns the remainder of a division operation.

Cadenas – Manipula y analiza texto.

  • join – Combines two strings into one.

  • letter – Extracts a character from a string by position.

  • length – Returns the number of characters in a string.

  • contains – Checks if a string includes a specific word or character.

  • convert – Converts a number into text, a whole number, or a decimal.

Matemáticas#

operador matemático#

The math operator block performs basic arithmetic on the values placed on either side. It returns a result based on the project’s print precision, which defaults to 0 decimal places but can be adjusted using the set print precision block.

El bloque de reporte del operador matemático.#
([0] [math_plus v] [0])

Parámetros

Descripción

valor 1

El primer número utilizado en la operación.

operador

The mathematical operator to use:

  • + - Addition
  • - - Subtraction
  • * - Multiplication
  • / - Division

valor 2

El segundo número utilizado en la operación.

Ejemplo

cuando empieza :: hat events
[Realizar sumas básicas y mostrar dos decimales.]
establecer la precisión de impresión [0.01 v] en la pantalla
imprimir ([10] [math_plus v] [10.5]) en pantalla ▶

operador de comparación#

El bloque operador de comparación devuelve un valor booleano que indica si la comparación entre dos valores es verdadera o falsa.

  • Verdadero – La comparación es correcta (por ejemplo, 5 > 3 devuelve Verdadero).

  • Falso – La comparación es incorrecta (por ejemplo, 2 ≥ 5 devuelve Falso).

El bloque booleano del operador de comparación.#
<[0] [math_equal v] [0]>

Parámetro

Descripción

valor 1

El primer valor a comparar.

operador

The comparison to use:

  • = - Equal to
  • < - Less than
  • ≤ - Less than or equal to
  • > - Greater than
  • ≥ - Greater than or equal to

valor 2

El segundo valor a comparar.

Ejemplo

cuando empieza :: hat events
[Gire a la derecha hasta que el rumbo alcance 90 grados.]
giro [derecha v]
esperar [0.05] segundos
esperar hasta <(dirección en grados) [math_greater_than v] [90]>
detener todo movimiento

operador lógico#

El bloque operador lógico devuelve un valor booleano que indica si la condición lógica entre múltiples valores es verdadera o falsa.

  • Verdadero: se cumple la condición lógica.

  • Falso: no se cumple la condición lógica.

El bloque booleano del operador lógico.#
<<> [y v] <>>

Parámetro

Descripción

condición 1

La primera condición booleana a evaluar.

operador

El operador lógico a utilizar:

  • y - Devuelve Verdadero si ambas condiciones son Verdaderas.
  • o - Devuelve Verdadero si al menos una condición es Verdadera.

condición 2

La segunda condición booleana a evaluar.

Ejemplo

cuando empieza :: hat events
[Patear un balón deportivo sostenido cuando se presiona la pantalla.]
por siempre
si <<tiene [balón deportivo v] ?> [y v] <pantalla presionada?>> entonces
patear objeto [duro v]

no operador#

El bloque operador not invierte el resultado de un bloque booleano. Si la entrada es Verdadero, devuelve Falso; si la entrada es Falso, devuelve Verdadero.

  • Verdadero: la condición de entrada normalmente devolvería Falso.

  • Falso: la condición de entrada normalmente devolvería Verdadero.

El bloque booleano del operador Not.#
<no <>>

Parámetro

Descripción

condición

La condición booleana que se debe invertir.

Ejemplo

cuando empieza :: hat events
[Gire hasta que se detecte una pelota deportiva o un barril.]
por siempre
obtener [toda la carga v] datos de AI Vision
si <no <¿Existe el objeto AI Vision?>> entonces
giro [derecha v]
si no
detener todo movimiento

operador de rango#

El bloque operador de rango devuelve un valor booleano que indica si un valor cae dentro de un rango especificado.

  • Verdadero – Si el valor está dentro del rango.

  • Falso – Si el valor está fuera del rango.

El bloque booleano del operador de rango.#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

Parámetro

Descripción

primer operador

The comparison operator to use:

  • < - Less than
  • ≤ - Less than or equal to
  • > - Greater than
  • ≥ - Greater than or equal to

valor

El valor a comprobar.

segundo operador

The comparison operator to use:

  • < - Less than
  • ≤ - Less than or equal to
  • > - Greater than
  • ≥ - Greater than or equal to

Ejemplo

cuando empieza :: hat events
[Avanzar e informar cuando esté fuera de los límites.]
mover [adelante v] para [100] [mm v] ◀ y no espera
por siempre
borrar pantalla
establecer cursor a [1]  columna de fila [1] en pantalla
si <[25] [math_less_than v] ([y v] posición en [mm v]) [math_less_than v] [75]> entonces
imprimir [Dentro de los límites.] en pantalla ▶
si no
imprimir [Fuera de límites!] en pantalla ▶

elige al azar#

El bloque pick random devuelve un número aleatorio, ya sea un entero o un decimal, dentro del rango especificado.

El bloque de reportero Pick Random.#
elegir al azar [1] para [10]

Parámetros

Descripción

mín.

El número más bajo posible que se puede elegir.

máximo

El número más alto que se puede elegir.

Ejemplos

cuando empieza :: hat events
[Mostrar un número entre 1 y 10.]
imprimir (elegir al azar [1] para [10]) en pantalla ▶

cuando empieza :: hat events
[Muestra un número decimal entre 1 y 10.5.]
establecer la precisión de impresión [Todos los Digitos v] en la pantalla
imprimir (elegir al azar [1] para [10.5]) en pantalla ▶

número redondo#

El bloque número redondeado devuelve el número dado redondeado al número entero más cercano, siguiendo las reglas de redondeo estándar:

  • Si el decimal es 0,5 o mayor, el número se redondea hacia arriba.

  • Si el decimal es menor que 0,5, el número se redondea hacia abajo.

El bloque de reporteros de Número Redondo.#
(redondear [0] a [0] decimales)

Parámetro

Descripción

número

El número a redondear.

decimales

La cantidad de decimales a redondear.

Ejemplo

cuando empieza :: hat events
[Muestra el resultado redondeado de 10 / 3.]
establecer la precisión de impresión [0.01 v] en la pantalla
imprimir (redondear ([10] [math_division v] [3]) a [1] decimales) en pantalla ▶

funciones matemáticas#

El bloque funciones matemáticas aplica una función matemática seleccionada a un número dado y devuelve el resultado. Admite operaciones como valor absoluto, redondeo, raíz cuadrada, funciones trigonométricas, logaritmos y exponenciación.

El bloque de reportero de funciones matemáticas.#
[abs v] de [0]

Parámetro

Descripción

función

The mathematical operation to apply to the input value:

  • abs - Absolute value
  • floor - Rounds down
  • ceiling - Rounds up
  • sqrt - Square root
  • sin - Sine
  • cos - Cosine
  • tan - Tangent
  • asin - Inverse sine
  • acos - Inverse cosine
  • atan - Inverse tangent
  • ln - Natural logarithm
  • log - Base 10 logarithm
  • e^ - Euler’s number raised to a power
  • 10^ - 10 raised to a power
  • negative - Returns the negative of the number

número

El número al que se aplicará la función.

Ejemplo

cuando empieza :: hat events
[Muestra la raíz cuadrada de 16.]
imprimir ([sqrt v] de [16]) en pantalla ▶

atan2#

El bloque atan2 devuelve la tangente inversa de Y/X como un ángulo en grados, que representa el ángulo entre el eje X positivo y el punto (X, Y).

(atan2 de [4] x: y: [3])

Parámetro

Descripción

incógnita

La posición horizontal del punto, medida desde el origen (0,0).

Y

La posición vertical del punto, medida desde el origen (0,0).

Ejemplo

cuando empieza :: hat events
[Calcula el ángulo desde la posición actual (4, 3).]
imprimir (atan2 de [4] x: y: [3]) en pantalla ▶

resto#

El bloque resto devuelve el resto de la operación de división entre dos valores.

El bloque de reporteros Resto.#
resto de [0] / [0]

Parámetro

Descripción

dividendo

El número a dividir.

divisor

El número por el que se dividirá.

Ejemplo

cuando empieza :: hat events
[Mostrar el resto de 10 / 3.]
imprimir (resto de [10] / [3]) en pantalla ▶

Instrumentos de cuerda#

unirse#

El bloque join devuelve una única cadena que combina dos o más cadenas de entrada.

El bloque de reportero Join.#
(unirse [manzana] [banana])

parámetro

descripción

cadena 1

La primera cadena a combinar.

cuerda 2

La segunda cadena a combinar.

cuando empieza :: hat events
[Mostrar "VEXcode" en la pantalla.]
imprimir (unirse [VEX] [código]) en pantalla ▶

carta#

La letra devuelve una cadena de un solo carácter desde la posición especificada en la cadena dada.

El bloque del reportero de Letter.#
(carta [1] de [apple])

parámetro

descripción

posición

La posición del carácter en la cadena (comenzando en 1).

cadena

La cadena de la que se extraerá una letra.

cuando empieza :: hat events
[Mostrar la primera letra de "Robot".]
imprimir (carta (1) de [Robot]) en pantalla ▶

longitud#

El bloque longitud devuelve la cantidad de caracteres en la cadena especificada, incluidos los espacios.

El bloque reportero de longitud.#
(longitud de [apple])

parámetro

descripción

cadena

La cuerda para medir la longitud de.

Ejemplo

cuando empieza :: hat events
[Cuente el número de caracteres en "Robótica VEX".]
imprimir (longitud de [Robótica VEX]) en pantalla ▶

contiene#

El bloque contiene devuelve un valor booleano que indica si la cadena especificada incluye la palabra o el carácter dado.

  • Verdadero: la cadena incluye esa palabra o carácter específico.

  • Falso: la cadena no incluye esa palabra o carácter específico.

El bloque Contiene Booleano.#
<[apple] contiene [a] ?>

parámetro

descripción

cadena

La cadena principal donde buscar dentro.

término de búsqueda

La palabra o carácter que se debe buscar dentro de la cadena.

Ejemplo

cuando empieza :: hat events
[Comprueba si "robótica" contiene "bot".]
si <[robotics] contiene [bot] ?> entonces
imprimir [La palabra contiene "bot".] en pantalla ▶
si no
imprimir [Extraviado.] en pantalla ▶
fin

convertir#

El bloque convert devuelve el valor de un número convertido al tipo especificado, ya sea como texto o como número.

  • text – Converts the number to a string. Numbers must be in string format to work with String Operator blocks.

  • number – Converts the number to a decimal (floating-point) value.

El bloque de reportero Convert.#
(convertir [0] a [text v])

parámetro

descripción

valor

El número a convertir.

tipo

The type to convert the number into:

  • text
  • number

Ejemplo

cuando empieza :: hat events
[Añade cualquier número a 5.]
preguntar [Dame un numero] y esperar
imprimir ((convertir (respuesta) a [número v]) [math_plus v] [5]) en pantalla ▶