Arithmetic operators occur in arithmetic operations, i.e. in expressions that
contain integers or reals. There are 2 kinds of operators : Binary and unary arithmetic
operators. Binary operators are listed in table (6.2), unary operators are listed in table
(6.3).
Table 6.2:
Binary arithmetic operators
Operator
Operation
+
Addition
-
Subtraction
*
Multiplication
/
Division
Div
Integer division
Mod
Remainder
With the exception of Div and Mod, which accept only integer expressions as operands, all
operators accept real and integer expressions as operands. For binary operators, the result type will
be integer if both operands are integer type expressions. If one of the operands is a real type
expression, then the result is real. As an exception : division (/) results always in real
values.
Table 6.3:
Unary arithmetic operators
Operator
Operation
+
Sign identity
-
Sign inversion
For unary operators, the result type is always equal to the expression type. The division (/) and
Mod operator will cause run-time errors if the second argument is zero. The sign of the result of a
Mod operator is the same as the sign of the left side operand of the Mod operator. In fact, the Mod
operator is equivalent to the following operation :
I mod J = I - (I div J) * J
but it executes faster than the right hand side expression.