Round, функция
Синтаксис
function Round(X: Вещественный тип): Int64;
Описание
Функция Round округляет вещественное значение до целого. Round не является настоящей
функцией.
Ошибки
Советы и приемы
- Функция Round использует режим округления, определяемый управляющим состоянием
FPU. По умолчанию Delphi устанавливает режим "ближе к четному",
также называющийся "банковским округлением". Числа округляются
к ближайшему целому, а значения, находящиеся точно между двумя целыми, округляются
до четного числа.
- При изменении управляющего состояния FPU изменяется поведение Round и
других функций, зависящих от Round. Для того чтобы использовать другой метод
округления, измените управляющее состояние FPU временно, как показано ниже.
// Округление по направлению плюс бесконечности.
function RoundUp(X: Extended): Int64;
const
RoundUpCW: Word = $1B32; // Аналогично Default8087CW, кроме режима
// округления
var
OldCW: Word;
begin
OldCW := Default8087CW;
try
Set8087CW(RoundUpCW);
Result := Round(X);
finally
Set8087CW(OldCW);
end;
end;
- Если X - целое, компилятор исключает вызов функции Round и просто возвращает
X.
- Если X - Variant, Delphi автоматически преобразует его в вещественное
число и выполняет округление.
- Компилятор не принимает аргумент Int64 для функции Round, однако использовать
ее для Int64 все равно нет смысла.
- Если X равен бесконечности или NaN, Round выдает ошибку времени выполнения
6 (EInvalidOp).
Пример
Смотрите также
Функции Int, Trunc.
Нет комментариев.
Оставить комментарий:
|
|