20  Pascal User Manual  All operations on values of type Real are approximations, the  accuracy of which is defined by the implementation (machine) that you  are using.  Real is the only simple type that is not an ordinal type. Real  values have no ordinal numbers, and for any real value there is no  successor or predecessor value.  As long as at least one of the operands is of type  Real  (the other  possibly being of type  Integer) the following operators yield a real  value:  These predeclared functions accept a real or integer argument and  yield a real result:  These predeclared functions accept a real argument and yield a real  result:  Warning:  Although real is included as a simple type, it cannot always be  used in the same context as the other simple types (i.e., ordinal types). In  particular, the functions  pred  and  succ  cannot take real arguments;  and values of type Real cannot be used when indexing arrays, nor in  controlling for statements, nor for defining the base type of a set.  Furthermore reals cannot be used in a subrange type nor to index a case  statement.  *  multiply  /  divide (both operands may be integers, but the result is  always real)  +  add  subtract  abs (R)  sqr (R)  absolute value of R  R  squared, if the resulting value doesn't exceed  the range of real numbers  sin(X)  cos (X)  sine of X, X in radians  cosine of x,  X  in radians  arctan  (X)  arc tangant in radians of  X  In(X)  exp(X)  sqrt(X)  natural logarithm (to the base e) of x,  X  >  0  exponential function (e raised to the x)  square root of }(, X >=  O. 