Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  


Основы Delphi
Abs
Функция
Предназначена для получения абсолютной величины числа (модуль) System unit
  function Abs ( Number : Numeric type ) : Numeric type;
Описание
Функция Abs возвращает абсолютную величину отрицательного или положительного числа (модуль). Это реализуется удалением отрицательного знака, если такой обнаружен.

Число может быть любым числовым типом, также может быть Variant, он будет преобразован в число. Например, Variant строку '-1.23' Abs всегда преобразовывает её в Extended.

Примечания
Abs может использоваться для "Экстремальных" величин. Например, бесконечность (смотри пример). Функция Abs просто удаляет отрицательный знак и -INF становится INF.
Похожие команды
Div  Выполняет целочисленное деление без остатка

Mod  Выполняет целочисленное деление, возвращая остаток

 
Пример кода : Иллюстрация абсолютных значений различных типов данных
var
  float, bigFloat : single;
  int : Integer;
  varVar : Variant;

begin
  float    := -1.5;       // Маленькое отрицательное число с плавающей точкой
  bigFloat := -4.56E100;  // Бесконечное отрицательное число с плавающей точкой
  int      := -7;         // Отрицательное целое число
  varVar   := '-98';      // Variant преобразуется в число с плавающей точкой!

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

  // Variant преобразуется в Extended тип с плавающей точкой
  float := Abs(varVar);
  ShowMessage('Abs(varVar) = '+FloatToStr(float));
end;
Abs(float) = 1.5
Abs(bigFloat) = INF
Abs(int) = 7
Abs(varVar) = 98
 



© Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки  |     |  Английская версия