Operadores y Sintaxis

Operadores aritméticos, de comparación y agrupación.

El motor de fórmulas admite operadores estándar para aritmética, comparación y lógica.

Operadores aritméticos

+   Suma            5 + 3 = 8
-   Resta           5 - 3 = 2
*   Multiplicación  5 * 3 = 15
/   División        15 / 3 = 5
^   Potencia        2 ^ 3 = 8
%   Módulo (resto)  7 % 3 = 1
()  Agrupación      (2 + 3) * 4 = 20

Operadores de comparación

Las comparaciones devuelven 1 (verdadero) o 0 (falso). Úselas en If(), Case() y en reglas de validación. Un solo signo igual compara igual que ==, también con texto.

= / ==  Igual          $width == 1000
!=      Distinto       $type != "steel"
>       Mayor que      $height > 2000
<       Menor que      $width < 500
>=      Mayor o igual  $count >= 1
<=      Menor o igual  $gap <= 50

Operadores lógicos

Combine condiciones con los operadores and (y), or (o) y not (no). Escríbalos entre las condiciones, no como funciones.

a and b  Ambas condiciones son verdaderas     1 and 0 = 0
a or b   Al menos una condición es verdadera  1 or 0 = 1
not a    Negación                             not 0 = 1
Ejemplo:
If($width > 1000 and $height > 2000; 1; 0)
→ 1 si ambas medidas superan los límites; si no, 0

Prioridad de operadores

  • 1. Paréntesis () — máxima prioridad
  • 2. Potencia ^ — de derecha a izquierda
  • 3. Multiplicación *, división /, módulo %
  • 4. Suma +, resta -
  • 5. Comparaciones ==, !=, >, <, >=, <=
  • 6. and lógico y después or — prioridad más baja. Ponga una comparación negada entre paréntesis: not ($width > 1000).

Variables

Haga referencia a parámetros y cálculos con el prefijo $. Las variables pueden contener letras, números y guiones bajos; también se admiten nombres en cirílico.

$width         → valor del parámetro
$c1            → valor calculado
$цена_за_метр  → nombre de variable en cirílico

Los campos de fórmula resaltan funciones, variables, números, cadenas y problemas locales de sintaxis. Para los casos claros y seguros, utilice el quick fix debajo del campo.

Dividir entre cero produce un error. Protéjalo con If($divisor != 0; $value / $divisor; 0).