オペレーター
Aritméticos
Sección titulada «Aritméticos»| Operador | Descripción | Ejemplo |
|---|---|---|
+ | Suma dos valores numéricos o concatena texto. | número total = a + b |
- | Resta el segundo operando del primero. | entero diferencia = a - b |
* | Multiplicación. | entero producto = a * b |
/ | División. Para enteros la división es entera. | entero cociente = a / b |
% | Residuo o módulo. | entero residuo = a % b |
entero suma = 5 + 3texto combinado = "Hola" + " Quetzal"Relacionales
Sección titulada «Relacionales»| Operador | Descripción |
|---|---|
== | Igualdad. |
!= | Desigualdad. |
> | Mayor que. |
< | Menor que. |
>= | Mayor o igual que. |
<= | Menor o igual que. |
log es_mayor = 10 > 5log es_igual = "texto" == "texto"Lógicos
Sección titulada «Lógicos»Quetzal admite tanto los operadores simbólicos (&&, ||, !) como sus equivalentes en español (y, o, no).
log acceso = (usuario.autenticado y !usuario.bloqueado)log disponible = (stock > 0) o (pedido_en_camino == verdadero)log negado = no accesoLos valores no booleanos se convierten automáticamente a log siguiendo las reglas del intérprete (por ejemplo, listas vacías son falso).
Asignación
Sección titulada «Asignación»| Operador | Descripción |
|---|---|
= | Asignación simple. |
+= | Suma y asigna. |
-= | Resta y asigna. |
*= | Multiplica y asigna. |
/= | Divide y asigna. |
%= | Calcula el residuo y asigna. |
entero var acumulado = 0acumulado += 5acumulado -= 2Incremento y decremento
Sección titulada «Incremento y decremento»Los operadores ++ y -- están disponibles en forma postfija.
entero var contador = 0contador++contador--Operador ternario
Sección titulada «Operador ternario»La forma condicion ? valor_si_verdadero : valor_si_falso está disponible para evaluaciones rápidas.
entero numero = -10entero absoluto = numero < 0 ? -numero : numeroOperadores en listas y JSON
Sección titulada «Operadores en listas y JSON»Las listas y los valores jsn proveen métodos en lugar de operadores específicos. Por ejemplo, lista.concatenar(otra_lista) o json.fusionar(otro_json). Consulta las secciones de tipos de datos para más información.
Precedencia
Sección titulada «Precedencia»- Llamadas a función y acceso a miembros.
- Operadores unarios (
no,!,++,--). - Multiplicación y división.
- Suma y resta.
- Comparaciones.
- Operadores lógicos (
y,o). - Asignaciones (
=,+=, etc.).
Usa paréntesis para aclarar la intención cuando combines varios operadores.
Ejemplos completos
Sección titulada «Ejemplos completos»// Operadores aritméticosentero suma(entero a, entero b) { retornar a + b}
entero resta(entero a, entero b) { retornar a - b}
// Operadores lógicoslog es_verdadero(log valor) { retornar valor}
log es_falso(log valor) { retornar !valor}
// Operadores de comparaciónlog es_igual(entero a, entero b) { retornar a == b}
log es_diferente(entero a, entero b) { retornar a != b}
log es_mayor(entero a, entero b) { retornar a > b}
log es_menor(entero a, entero b) { retornar a < b}
log es_mayor_igual(entero a, entero b) { retornar a >= b}
log es_menor_igual(entero a, entero b) { retornar a <= b}
// Operadores de asignaciónentero asignacion(entero valor) { entero resultado = valor retornar resultado}
// Operadores de concatenacióntexto concatenacion(texto var palabra) { palabra += " concatenado" retornar palabra}
// Operadores de incremento y decrementoentero incremento(entero var valor) { valor++ retornar valor}
entero decremento(entero var valor) { valor-- retornar valor}
// Operadores compuestosentero suma_compuesta(entero var valor, entero incremento) { valor += incremento retornar valor}
entero resta_compuesta(entero var valor, entero decremento) { valor -= decremento retornar valor}
entero multiplicacion_compuesta(entero var valor, entero factor) { valor *= factor retornar valor}
entero division_compuesta(entero var valor, entero divisor) { valor /= divisor retornar valor}
entero modulo_compuesta(entero var valor, entero divisor) { valor %= divisor retornar valor}
// Operadores de cadenatexto agregar_texto(texto var palabra, texto agregado) { palabra += agregado retornar palabra}
// Ejecutar funciones para comprobar operadoresentero resultado_suma = suma(5, 10)entero resultado_resta = resta(10, 5)log resultado_es_verdadero = es_verdadero(verdadero)log resultado_es_falso = es_falso(falso)log resultado_es_igual = es_igual(5, 5)log resultado_es_diferente = es_diferente(5, 10)log resultado_es_mayor = es_mayor(10, 5)log resultado_es_menor = es_menor(5, 10)log resultado_es_mayor_igual = es_mayor_igual(5, 5)log resultado_es_menor_igual = es_menor_igual(5, 5)entero resultado_asignacion = asignacion(10)texto resultado_concatenacion = concatenacion("Hola")entero resultado_incremento = incremento(5)entero resultado_decremento = decremento(5)entero resultado_suma_compuesta = suma_compuesta(5, 10)entero resultado_resta_compuesta = resta_compuesta(10, 5)entero resultado_multiplicacion_compuesta = multiplicacion_compuesta(5, 10)entero resultado_division_compuesta = division_compuesta(10, 5)entero resultado_modulo_compuesta = modulo_compuesta(10, 5)texto resultado_agregar_texto = agregar_texto("Hola", " Mundo")