Real
│
Deutsch (de) │
English (en) │
français (fr) │
русский (ru) │
real
is a standard type of the Pascal programming language.
Despite its name, the data type real
only provides a “reasonable approximation” of ℝ, the set of real numbers.
For example the real number [math]\displaystyle{ \sqrt{2} }[/math] may have the real
value of 1.4
in Pascal.
usage
Floatingpoint literals can be assigned to real
variables.
program realDemo(input, output, stderr);
var
r: real;
begin
r := 0.0; { r becomes zero }
writeLn(r, ' ', r:8:4);
r := 1e2; { r becomes 1*(10^2) [a hundred] }
writeLn(r, ' ', r:8:4);
r := r / r; { r becomes one }
writeLn(r, ' ', r:8:4);
end.
real
, like all floatingpoint types, supports /
division operator, while integer types support div
operator.
internal representation
The internal representation of the type real
(i.e. number of bytes and byte ordering) and the resulting range and precision are platform dependent.
Quote from the “FreePascal Programmer's Manual” (Chapter 8.2.5 Floating point types):
Contrary to Turbo Pascal, where the
real
type had a special internal format, under Free Pascal thereal
type simply maps to one of the other real types. It maps to thedouble
type on processors which support floating point operations, while it maps to thesingle
type on processors which do not support floating point operations in hardware.
alternatives
Instead of specifying real
in your code, write ValReal
, a type alias defined by the System unit.
It automatically maps to the largest available floating point type available: single
, double
or extended
.
see also
simple data types 


complex data types 