Функции Int, Round, RoundDown, RoundUp и Trunc

Применимо к: приложениям на основе холста столбцам формул Dataverse классическим потокам приложениям на основе модели интерфейсу командной строки Power Platform

Округление чисел.

Round, RoundDown и RoundUp

Функции Round, RoundDown и RoundUp округляют число до указанного количества знаков после запятой (десятичных разрядов).

  • Функция Round округляет число в большую сторону, если следующая цифра после запятой больше или равна 5. В противном случае число округляется в меньшую сторону.
  • Функция RoundDown всегда округляет число в меньшую сторону — до предыдущего (меньшего) числа, в сторону нуля.
  • Функция RoundUp всегда округляет число в большую сторону — до следующего (большего) числа, в сторону от нуля.

Число десятичных знаков, допускаемых для этих функций:

Число десятичных знаков Описание Пример
Больше 0 Число округляется справа от десятичного разделителя. Round( 12.37, 1 ) возвращает 12,4.
0 Число округляется до ближайшего целого числа. Round( 12.37, 0 ) возвращает 12.
Меньше 0 Число округляется слева от десятичного разделителя. Round( 12.37, -1 ) возвращает 10.

Int и Trunc

Функции Int и Trunc округляют число до целого (целое число без десятичной дроби):

  • Int округляет значение вниз до ближайшего целого.
  • Trunc усекает число до целой части, удаляя десятичную часть.

Разница между Int и Trunc заключается в обработке отрицательных чисел. Например, для аргумента -4.3Int вернет целое число в сторону от нуля, -5, в то время как Trunc вернет целое число, близкое к нулю, -4. Int возвращает значения, которые уникальные среди пяти функций округления, а Trunc возвращает те же значения, что и RoundDown.

Используйте Trunc для извлечения десятичной части числа путем вычитания ее из оригинала, например X - Trunc(X).

Десятичные разряды нельзя указывать с помощью Trunc как это можно с Microsoft Excel. Вместо этого используйте RoundDown, когда это необходимо.

Таблицы с одним столбцом

Эти функции поддерживают таблицы с одним столбцом. При передаче одного числа возвращаемое значение является округленной версией такого числа. При передаче таблицы, содержащей один столбец с числами, возвращаемое значение представляет таблицу из одного столбца с округленными числами. Параметр DecimalPlaces может быть одним значением или таблицей с одним столбцом. Если в таблице с одним столбцом меньше значений, чем Число, для остальных значений используется ноль. Используйте ShowColumns и другие функции формирования таблиц для извлечения таблицы с одним столбцом из таблицы большего размера.

Синтаксис

Round( Number, DecimalPlaces )
RoundDown( Number, DecimalPlaces )
RoundUp( Number, DecimalPlaces )

  • Number — обязательный аргумент. Число для округления.
  • DecimalPlaces — обязательный аргумент. Число десятичных знаков для округления. Используйте положительное значение, чтобы указать десятичные разряды справа от десятичного разделителя, отрицательное значение слева и ноль для целого числа.

Int(Число)
Trunc(Число)

  • Number — обязательный аргумент. Число, которое нужно округлить до целого числа.

Примеры

Округление до целого числа.

X Round( X, 0 ) RoundUp( X, 0 ) RoundDown( X, 0 ) Int( X ) Trunc( X )
7.9 8 8 7 7 7
-7,9 -8 -8 -7 -8 -7
7.5 8 8 7 7 7
-7,5 -8 -8 -7 -8 -7
7.1 7 8 7 7 7
-7,1 -7 -8 -7 -8 -7

Округление до двух десятичных знаков справа от десятичного разделителя (0,01).

X Round( X, 2 ) RoundUp( X, 2 ) RoundDown( X, 2 )
430.123 430.12 430.13 430.12
430.125 430.13 430.13 430.12
430.128 430.13 430.13 430.12

Округление до двух десятичных знаков слева от десятичного разделителя (100).

X Round( X, -2 ) RoundUp( X, -2 ) RoundDown( X, -2 )
430.123 400 500 400
449.942 400 500 400
450.000 500 500 400
450.124 500 500 400
479.128 500 500 400

Округление для таблицы значений с одним столбцом.

X Int( X ) Round( X, 2 ) RoundDown( X, [ 0, 1, 2 ] ) RoundUp( X, [ 2 ] )
[ 123.456,
987.593,
542,639 ]
[ 123,
987,
542 ]
[ 123.46,
987.59,
542,64 ]
[ 123,
987.5,
542,63 ]
[ 123.46,
988,
543 ]