Operátory

Operátory

Operátory vo výrazoch

Nasledujúce tabuľky ukazujú typy operandov a výsledkov aritmetických a logických operácií.

Pri vyhodnocovaní akýchkoľvek výrazov platí, že ak je nejaký operand, ktorý sa zúčastňuje na výpočte neplatný, výsledok je tiež neplatný. Výnimkou je počítaný bod, ak má nastavenú vlastnosť "Neplatné hodnoty vo výraze nahraď hodnotou 0". Potom sa vyhodnocuje tak, ako je uvedené tu.

Pozri tiež kapitolu Zoradenie operátorov podľa priority


Aritmetické operátory

Operátor

Operácia

Popis

Typy operandov

Typ výsledku

+

sčítanie

Rozdiel dvoch absolútnych časov je počítaný nasledovne:
ATime - BTime = %SubTimeLocal(ATime, BTime)

Ostatné kombinácie absolútnych a relatívnych časov pri operátoroch + a - sú počítané nasledovne:
ATime + RTime = %AddTimeLocal(ATime, RTime)

alebo

ATime - RTime = %AddTimeLocal(ATime, -RTime) 

integer
real
boolean
časový interval

integer
real
boolean
časový interval

Operand 1

Operand 2

absolútny čas

integer
real
relatívny čas

integer
real
relatívny čas

absolútny čas

absolútny čas

-

odčítanie

Rozdiel dvoch absolútnych časov je počítaný nasledovne:
ATime - BTime = %SubTimeLocal(ATime, BTime)

Ostatné kombinácie absolútnych a relatívnych časov pri operátoroch + a - sú počítané nasledovne:
ATime + RTime = %AddTimeLocal(ATime, RTime)

alebo

ATime - RTime = %AddTimeLocal(ATime, -RTime) 

 

integer
real
boolean
časový interval

integer
real
boolean
časový interval

Operand 1

Operand 2

absolútny čas

integer
real
relatívny čas

absolútny čas

*

násobenie

 

integer
real
boolean

integer
real
integer

/

delenie

 

integer
real
boolean

real
real
integer

-

unárny operátor

 

integer
real

integer
real

Operandy typu Boolean sa pri aritmetických operáciách konvertujú na celočíselný typ nasledovne:

  • TRUE -> 1

  • FALSE-> 0

Poznámka

  • Výsledok funkcie typu Boolean je možné skonvertovať na iný typ vynásobením konštantou príslušného typu. Príklad: %Flag(Objekt,@A)*1 dáva číselný typ výslednej hodnoty tj. Integer, Real.

Logické operátory

operátor

operácia

typy operandov

typ výsledku

&

logický súčin

boolean
integer

boolean
integer

|

logický súčet

boolean

boolean

!

negácia

boolean

boolean