Operadores#
Introducción#
The Operator blocks in VEXcode EXP help the robot work with numbers and words. These blocks can solve math problems, compare values, evaluating if conditions are true or false, and working with strings. Strings can be used to print values and words.
A continuación se muestra una lista de los bloques disponibles:
operador matemático – Realiza suma, resta, multiplicación o división.
comparison operator – Compares two values using greater than, less than, or equal to operators.
operador lógico – Evalúa múltiples condiciones usando and o or.
operador de negación – Invierte un valor booleano.
operador de rango – Comprueba si un número se encuentra dentro de un rango.
elegir aleatorio – Genera un número aleatorio dentro de un rango especificado.
número de redondeo – Redondea un número al número entero más cercano.
funciones matemáticas – Aplica operaciones como raíz cuadrada, trigonometría, logaritmos y exponenciación.
atan2 – Calcula la tangente inversa de y/x.
remainder – Reports the remainder of a division operation.
join – Combina dos cadenas en una.
letra – Extrae un carácter de una cadena por posición.
length – Reports the number of characters in a string.
contiene – Comprueba si una cadena incluye una palabra o carácter específico.
convertir – Convierte un número en texto, un número entero o un decimal.
operador matemático#
The math operator reporter block performs basic math operations on the values placed on either side of the operator. 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 on screen or set print precision on console blocks.
([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:
|
valor 2 |
El segundo número utilizado en la operación. |
Ejemplo
cuando empezó
[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#
The comparison operator Boolean block reports whether the comparison between two values is True or False.
True – The comparison is correct (e.g., 5 > 3 returns True).
False – The comparison is incorrect (e.g., 2 ≥ 5 returns False).
<[0] [math_equal v] [0]>
Parámetro |
Descripción |
|---|---|
valor 1 |
El primer valor a comparar. |
operador |
Comparación a utilizar:
|
valor 2 |
El segundo valor a comparar. |
Ejemplo
cuando empezó
[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#
The logical operator Boolean block reports whether the logical condition between multiple values is True or False.
True – The logic condition is met.
False – The logic condition is not met.
<<> [and v] <>>
Parámetro |
Descripción |
|---|---|
condición 1 |
La primera condición booleana a evaluar. |
operador |
The logical operator to use: and reports True if both conditions are True. or reports True if at least one condition is True. |
condición 2 |
La segunda condición booleana a evaluar. |
Ejemplo
cuando empezó
[Display if the ▼ and B Controller buttons are pressed.]
para siempre
pantalla clara
Coloque el cursor en la fila [1] columna [1] en la pantalla
si <<[Controller 1 v] [▼ v] presionado?> [and v] <[Controller 1 v] [B v] presionado?>> entonces
imprimir [Buttons pressed!] en la pantalla ▶
fin
fin
no operador#
The not operator Boolean block inverts the result of a Boolean block. If the input is True, it reports False, and if the input is False, it reports True.
True – The input condition would normally report False.
False – The input condition would normally report True.
<no <>>
Parámetro |
Descripción |
|---|---|
condición |
La condición booleana que se va a invertir. |
Ejemplo
cuando empezó
[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 campo#
The range operator Boolean block reports whether a value falls within a specified range.
True – If the value is within the range.
False – If the value is outside the range.
<[0] [math_less_than v] [0] [math_less_than v] [0]>
Parámetro |
Descripción |
|---|---|
primer operador |
El operador de comparación a utilizar:
|
valor |
El valor a comprobar. |
segundo operador |
El operador de comparación a utilizar:
|
Ejemplo
cuando empezó
[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 <[90] [math_less_than v] (rumbo de la unidad en grados) [math_less_than v] [270]> entonces
imprimir [Facing backward!] en la pantalla ▶
demás
imprimir [Facing forward!] en la pantalla ▶
elegir al azar#
The pick random reporter block reports a random positive or negative number between a minimum and a maximum. It can return both the min value and the max value. For example, picking 1 to 10 can return any whole number from 1 through 10.
elige al azar de [1] a [10]
Parámetros |
Descripción |
|---|---|
min |
El número más bajo posible que se puede elegir. |
máximo |
El número más alto posible que se puede elegir. |
Ejemplos
cuando empezó
[Display a number between 1 and 10.]
imprimir (elige al azar de [1] a [10]) en la pantalla ▶
número redondo#
The round number reporter block reports the given number rounded to the nearest whole number, following standard rounding rules:
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.
(redondear de [0] a [0] decimal)
Parámetro |
Descripción |
|---|---|
número |
El número a redondear. |
decimales |
La cantidad de decimales a los que redondear. |
Ejemplo
cuando empezó
[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#
The math functions reporter block applies a selected mathematical function to a given number and returns the result. It supports operations such as absolute value, rounding, square roots, trigonometric functions, logarithms, and exponentiation.
[abs v] de [0]
Parámetro |
Descripción |
|---|---|
función |
The mathematical operation to apply to the input value:
|
número |
El número al que se aplicará la función. |
Ejemplo
cuando empezó
[Display the square root of 16.]
imprimir ([sqrt v] de [16]) en la pantalla ▶
atan2#
The atan2 reporter block reports the inverse tangent of Y/X as an angle in degrees, representing the angle between the positive X-axis and the point (X, Y).
(atan2 de 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ó
[Calculate the angle from current position (4, 3).]
imprimir (atan2 de x:[4] y:[3]) en la pantalla ▶
resto#
The remainder reporter block reports the remainder of the division operation between two values.
(resto de [0]/[0])
Parámetro |
Descripción |
|---|---|
dividendo |
El número que se va a dividir. |
divisor |
El número por el que dividir. |
Ejemplo
cuando empezó
[Display the remainder of 10 / 3.]
imprimir (resto de [10]/[3]) en la pantalla ▶
unirse#
The join reporter block reports a single string that combines two input strings.
(unirse [apple] [banana])
parámetro |
descripción |
|---|---|
cadena 1 |
La primera cadena a combinar. |
cadena 2 |
La segunda cadena para combinar. |
cuando empezó
[Display "VEXcode" on the screen.]
imprimir (unirse [VEX] [code]) en la pantalla ▶
carta#
The letter reporter block reports a single-character string from the specified position in the given string.
(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 caracteres de la que se extraerá una letra. |
cuando empezó
[Display the first letter of "Robot".]
imprimir (letra (1) de [Robot]) en la pantalla ▶
longitud#
The length reporter block reports the number of characters in the specified string, including spaces.
(longitud de [apple])
parámetro |
descripción |
|---|---|
cadena |
La cuerda para medir la longitud. |
Ejemplo
cuando empezó
[Count the number of characters in "VEX Robotics".]
imprimir (longitud de [VEX Robotics]) en la pantalla ▶
contiene#
The contains Boolean block reports whether the specified string includes the given word or character.
True – The string includes that specific word or character.
False – The string does not include that specific word or character.
<[apple] contiene [a]?>
parámetro |
descripción |
|---|---|
cadena |
La cadena principal dentro de la cual realizar la búsqueda. |
término de búsqueda |
La palabra o carácter que se debe comprobar dentro de la cadena. |
Ejemplo
cuando empezó
[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#
The convert reporter block reports the value of a number converted to the specified type, either as text or a number.
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 value.
(convertir [0] a [texto v])
parámetro |
descripción |
|---|---|
valor |
El número a convertir. |
tipo |
Tipo de conversión del número:
|
Ejemplo
cuando empezó :: hat events
[Display the robot's heading as it turns.]
turno [derecha v]
para siempre
borrar todas las filas
imprimir (unirse [Currently facing: ] (convertir (rumbo de la unidad en grados) a [texto v])) ▶
esperar [0.5] segundos