Gives the absolute value of a number (-ve sign is removed) System unit
 function Abs(Number Numeric type):Numeric type;
The Abs function returns the absolute value of a negative or positive number. It does this by removing a negative sign, if found.
The Number can be any numeric type, and can even be a Variant, as long as it can be converted to a number. For example, a Variant set to a string '-1.23' will work fine. Always, Abs converts the Variant to an Extended floating point number prior to removing any negative sign, even if the result is an integer value.
Floating point numbers can be set to extreme values, such as infinity (see the example). The Abs function simply removes the negative sign of these, so that -INF becomes INF.
Related commands
DivPerforms integer division, discarding the remainder
ModPerforms integer division, returning the remainder
 Download this web site as a Windows program.

Example code : Illustrating absolute values of different data types
  float, bigFloat : single;
  int : Integer;
  varVar : Variant;

  float    := -1.5;      // Small negative floating point number
  bigFloat := -4.56E100;  // Infinite negative floating point number
  int      := -7;        // Negative integer
  varVar   := '-98';      // Variants are converted to floating point!

  ShowMessage('Abs(float) = '+FloatToStr(Abs(float)));
  ShowMessage('Abs(bigFloat) = '+FloatToStr(Abs(bigFloat)));
  ShowMessage('Abs(int) = '+FloatToStr(Abs(int)));

  // Variants are converted into Extended floating types
  float := Abs(varVar);
  ShowMessage('Abs(varVar) = '+FloatToStr(float));
Show full unit code
  Abs(float) = 1.5
  Abs(bigFloat) = INF
  Abs(int) = 7
  Abs(varVar) = 98
Delphi Programming © Neil Moffatt . All rights reserved.  |  Home Page