Valutatore di espressioni
Calcolare il risultato di un'espressione con numeri interi e decimali, variabili di tipo numerico, variabili di tipo stringa (solo per confronti tra stringhe), operatori aritmetici e booleani e un insieme di funzioni.
Proprietà
Proprietà | Descrizione |
---|---|
Espressione | L'espressione da calcolare. L'espressione può contenere un numero illimitato di parentesi, aperte e chiuse correttamente. Se l'espressione non segue la sintassi corretta, il convertitore non eseguirà il calcolo. |
Modalità | La direzione del collegamento dinamico:
|
Sorgente
Una o più variabili, identificate da un segnaposto con un numero di indice nel formato seguente {index}. Il numero dell'indice è progressivo, deve essere un numero intero maggiore di zero {0}.
I segnaposto possono essere visualizzati in qualsiasi ordine dell'espressione.
Valori letterali ammessi
- Valori booleani True e False.
- Numeri interi.
- Numeri decimali, con il punto come separatore.
- Numeri esadecimali con il prefisso "0x".
- Testo, ad esempio una stringa delimitata da virgolette doppie.MANCIA: Due virgolette doppie ("") vengono interpretate come sequenza di escape.
Operatori validi
- Aritmetica:+,-,*,/,%, e l'operatore unario-
- Bit per bit:&,|,^,~
- Di sfalsamento bit:<<,>>
- Logici:&&,||,!
- Unario di casting di tipo(<data_type>)
- Confronto<,<=,>,>=,==,!=NOTA:Gli operatori di confronto si applicano a:
- Dati numerici
- Dati DateTime
- Dati di durata
Gli operatori:==e!=vengono applicati ai tipi di dati String e LocalizedText.
Convenzioni sui tipi di dati
- I numeri interi letterali sonoInt32.
- I valori decimali letterali sonoDouble.
- I valori numerici sono consideratiInt32.
- I valori letterali True e False vengono interpretati comeBoolean.
- L'operatore / restituisce sempre un valoreDouble.
- L'operatore % genera un'eccezione in caso di divisione per modulo zero.
- L'operatore % accetta operandi di tipoFloateDouble.
- Tutte le funzioni restituiscono un valoreDouble, eccetto la funzione Sign, che restituisce un valoreInt32.
- L'operatore unario di casting accetta i tipi di dati:
- bool, Boolean
- sbyte, SByte
- short, Int16
- int, Int32
- long, Int64
- byte, Byte
- ushort, UInt16
- uint, UInt32
- ulong, UInt64
- float, Single
- double, Double
Funzioni disponibili
Sono disponibili le seguenti funzioni matematiche:
Funzione | Valore calcolato | Esempio |
---|---|---|
max | Massimo tra due valori. | max ({0}, {1}) |
min | Minimo tra due valori. | min ({0}, {1}) |
avg | Media dei valori indicati. | avg ({0}, {1}) |
abs | Valore assoluto. | abs ({0}) |
trunc | Parte intera di un numero decimale. | trunc ({0}) |
ceil | Valore approssimato per eccesso. | ceil (({0} + {1})/2) |
floor | Valore approssimato per difetto. | floor (({0} + {1})/2) |
round | Approssimazione al numero intero più vicino. | round (({0} + {1})/2) |
sqrt | Radice quadrata. | sqrt ({1}) |
sign | 0 se il valore dell'argomento è maggiore di zero.1 se il valore dell'argomento è minore di zero. | sign ({1}) |
Output
Il valore risultante dall'espressione.
Rappresentazione logica
Esempio di conversione logica nell'
Editor dei collegamenti dinamici avanzati:
Fornire un feedback