Функція Abs в Delphi призначена для отримання абсолютної величини числа (модуль).
System unit
function Abs (Number : Numeric type) : Numeric type;
Функція Abs повертає абсолютне значення негативного чи позитивного числа. Вона робить це, видаляючи негативний знак, якщо його знайдено.
Число може бути будь-яким числовим типом і навіть може бути варіантом, якщо його можна перетворити на число. Наприклад, Variant з рядком '-1.23' працюватиме нормально. Завжди Abs перетворює Variant на розширене число з плаваючою комою перед видаленням будь-якого негативного знака, навіть якщо результатом є ціле чисельне значення.
Примітка.
Числам з плаваючою комою можна надати екстремальні значення, наприклад нескінченність (див. приклад). Функція Abs просто видаляє з них негативний знак, так що -INF стає INF.
Функція Abs: Ілюстрація абсолютних значень різних типів даних
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
Подібні функції, процедури та команди
Div — виконує цілочисельне ділення без залишку.
Mod — виконує цілочисельне ділення, повертаючи залишок.
