Operadores#

Introducción#

Los bloques Operadores de VEXcode EXP gestionan cálculos matemáticos y manipulaciones 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.

Cadenas – Manipula y analiza texto.

  • join – Combina dos cadenas en una.

  • letra – Extrae un carácter de una cadena por posición.

  • length – Devuelve la cantidad de caracteres en una cadena.

  • contiene – Comprueba si una cadena incluye una palabra o carácter específico.

  • convert – Convierte un número en texto, un número entero o un decimal.

Matemáticas#

operador matemático#

El bloque operador matemático realiza operaciones aritméticas básicas con los valores a ambos lados. Devuelve un resultado basado en la precisión de impresión del proyecto, que por defecto es de 0 decimales, pero se puede ajustar mediante el bloque establecer precisión de impresión.

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

El operador matemático a utilizar:

  • + - Suma
  • - - Resta
  • * - Multiplicación
  • / - División

valor 2

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

Ejemplo

cuando empezó :: hat events
[Perform basic addition and show two decimal places.]
Establezca la precisión de impresión en [0.01 v] en la pantalla
imprimir ([10] [math_plus v] [10.5]) en la 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

La comparación a utilizar:

  • = - Igual a
  • < - Menor que
  • - Menor o igual a
  • > - Mayor que
  • - Mayor o igual a

valor 2

El segundo valor a comparar.

Ejemplo

cuando empezó :: hat events
[Turn right until the heading reaches 90 degrees.]
turno [derecha v]
esperar [0.5] segundos
esperar hasta <(rumbo de la unidad en grados) [math_greater_than v] [90]>
deja de conducir

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 del operador lógico booleano.#
<<> [and 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 empezó :: hat events
[Display if the left and right buttons are pressed.]
para siempre
pantalla clara
Coloque el cursor en la fila [1] columna [1] en la pantalla
si <<¿Botón del cerebro [izquierda v] presionado?> [and v] <¿Botón del cerebro [derecha v] presionado?>> entonces
imprimir [Buttons pressed!] en la pantalla ▶
fin
fin

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 empezó :: hat events
[Turn until the robot is facing left. ]
para siempre
si <no <(rumbo de la unidad en grados) [math_greater_than v] [270]>> entonces
turno [derecha v]
demás
deja de conducir

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

El operador de comparación a utilizar:

  • < - Menor que
  • ≤ - Menor o igual que
  • - Mayor que
  • ≥ - Mayor o igual que

valor

El valor a comprobar.

segundo operador

El operador de comparación a utilizar:

  • < - Menor que
  • ≤ - Menor o igual que
  • - Mayor que
  • ≥ - Mayor o igual que

Ejemplo

cuando empezó :: hat events
[Turn and display when facing forward or back. ]
girar [derecha v] por [360] grado ◀ y no esperes
para siempre
pantalla clara
Coloque el cursor en la fila [1] columna [1] en la pantalla
si <[270] [math_greater_than v] (rumbo de la unidad en grados) [math_greater_than v] [90]> entonces
imprimir [Facing backward!] en la pantalla ▶
demás
imprimir [Facing forward!] en la pantalla ▶

elige al azar#

El bloque pick random devuelve un entero aleatorio dentro del rango especificado.

El bloque de reportero Pick Random.#
elige al azar de [1] a [10]

Parámetros

Descripción

mín.

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

máximo

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

Ejemplos

cuando empezó :: hat events
[Display a number between 1 and 10.]
imprimir (elige al azar de [1] a [10]) ▶

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 de [0] a [0] decimal)

Parámetro

Descripción

número

El número a redondear.

decimales

La cantidad de decimales a redondear.

Ejemplo

cuando empezó :: hat events
[Display the rounded result of 10 / 3.]
Establezca la precisión de impresión en [0.01 v] en la pantalla
imprimir (redondear de ([10] [math_division v] [3]) a [1] decimal) en la 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

La operación matemática a aplicar al valor de entrada:

  • abs - Valor absoluto
  • floor - Redondea hacia abajo
  • ceiling - Redondea hacia arriba
  • sqrt - Raíz cuadrada
  • sin - Seno
  • cos - Coseno
  • tan - Tangente
  • asin - Seno inverso
  • acos - Coseno inverso
  • atan - Tangente inversa
  • ln - Logaritmo natural
  • log - Logaritmo en base 10
  • e^ - Número de Euler elevado a una potencia
  • 10^ - 10 elevado a una potencia
  • negative - Devuelve el negativo del número

número

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

Ejemplo

cuando empezó :: hat events
[Display the square root of 16.]
imprimir ([sqrt v] de [16]) en la 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 of x:[4] 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 empezó :: hat events
[Calculate the angle from current position (4, 3).]
imprimir (atan2 of x:[4] y:[3]) en la pantalla ▶

resto#

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

El bloque de reporteros Resto.#
(remainder of [0] / [0])

Parámetro

Descripción

dividendo

El número a dividir.

divisor

El número por el que se dividirá.

Ejemplo

cuando empezó :: hat events
[Display the remainder of 10 / 3.]
imprimir (remainder of [10] / [3]) en la 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 [apple] [banana])

parámetro

descripción

cadena 1

La primera cadena a combinar.

cuerda 2

La segunda cadena a combinar.

cuando empezó :: hat events
[Display "VEXcode" on the screen.]
imprimir (unirse [VEX] [code]) en la pantalla ▶

carta#

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

El bloque del reportero de Letter.#
(letra [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 empezó :: hat events
[Display the first letter of "Robot".]
imprimir (letra (1) de [Robot]) en la 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] :: operators)

parámetro

descripción

cadena

La cuerda para medir la longitud de.

Ejemplo

cuando empezó :: hat events
[Count the number of characters in "VEX Robotics".]
imprimir (longitud de [VEX Robotics] :: operators) en la 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 dentro de la cual se realizará la búsqueda.

término de búsqueda

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

Ejemplo

cuando empezó :: hat events
[Check if "robotics" contains "bot".]
si <[robotics] contiene [bot]?> entonces
imprimir [The word contains "bot".] en la pantalla ▶
demás
imprimir [Not found.] en la 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.

  • Texto: Convierte el número en una cadena. Los números deben estar en formato de cadena para funcionar con bloques de Operador de cadena.

  • número – Convierte el número en un valor decimal (punto flotante).

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

parámetro

descripción

valor

El número a convertir.

tipo

El tipo en el que se convertirá el número:

  • texto
  • número

Ejemplo

Próximamente habrá un ejemplo.