FLOAT
The FLOAT data type stores values as double-precision floating-point binary
numbers with up to 16 significant digits. FLOAT corresponds to the double data
type in the C language. Values for the FLOAT data type have the same range of
values as the C double data type on your C compiler.
For compatibility with the ANSI standard for embedded SQL, you can declare a
whole number between 1 and 14 as the precision of a FLOAT data type, but the
actual precision is data-dependent and compiler-dependent.
A variable or constant of the FLOAT data type typically stores scientific or
engineering data that can only be calculated approximately. Since floating-point
numbers retain only their most significant digits, a value that is entered
into a FLOAT variable, constant, or database column can differ slightly from the
numeric value that a 4GL form or report displays.
This rounding error arises from how computers store floating-point numbers
internally. For example, you might enter a value of 1.1 into a FLOAT field. After
processing the 4GL statement, the program might display this value as
1.09999999. This occurs in the typical case where the exact floating-point binary
representation of a base-10 value requires an infinite number of digits in the
mantissa. The computer stores a finite number of digits, so it stores an approximate
value, with the least significant digits treated as zeros.