Difference between revisions of "Language Reference/Built-in entities/Operators"

From wiki.visual-prolog.com
m (Categorized)
(Unary minus)
Line 4: Line 4:
! Description
! Description
! Remark
! Remark
|-
| <vp>^</vp>
| Power operation
| Not defined for 64 bit integral numbers
|-
|-
| <vp>-</vp> (unary)
| <vp>-</vp> (unary)
| Unary minus
| Unary minus
|
|
|-
| <vp>^</vp>
| Power operation
| Not defined for 64 bit integral numbers
|-
|-
| <vp>*</vp>, <vp>/</vp>
| <vp>*</vp>, <vp>/</vp>
Line 36: Line 36:


All binary operators takes two arguments of same base type and returns a value of that base type.  Operands and result may be converted using ordinary subtype rules.
All binary operators takes two arguments of same base type and returns a value of that base type.  Operands and result may be converted using ordinary subtype rules.
See also {{lang2|Terms|Operators|Operators}}.


==== Integral division ====
==== Integral division ====

Revision as of 15:27, 18 March 2010

Operator Description Remark
^ Power operation Not defined for 64 bit integral numbers
- (unary) Unary minus
*, / Multiplication and division
div, mod The quotient and remainder of an integral division rounded towards minus infinity Not defined for real's
quot, rem The quotient and remainder of an integral division rounded towards zero Not defined for real's
+, - Addition and subtraction
  • The operators are listed from highest to lowest precedence
  • All division and multiplication operators have same precedence.
  • The the power operator is right associative
  • All other operators are left associative.

All binary operators takes two arguments of same base type and returns a value of that base type. Operands and result may be converted using ordinary subtype rules.

See also Operators.

Integral division

div and quot for positive results they work the same, but if the result is negative div rounds towards minus infinitive, while quot rounds towards zero.

mod is the remainder corresponding to div, and rem is the remainder corresponding to quot.

A B A div B A mod B A quot B A rem B
15 7 2 1 2 1
-15 7 -3 6 -2 -1
15 -7 -3 -6 -2 1
-15 -7 2 -1 2 -1