round что это в информатике
Функция Round
Подпишись на новости, чтобы ничего не пропустить
Функция Round в Паскале округляет значение с плавающей точкой до ближайшего целого числа. Синтаксис:
function Round(X: ValReal) : Int64;
Функция Round округляет Х до ближайшего целого числа и возвращает значение, которое может быть как меньше, так и больше исходного значения вещественного числа Х.
О типе ValReal я рассказывал здесь.
Правило округления числа
Округление вещественного числа Х выполняется по следующему правилу:
Примеры округления чисел
Исходя из вышесказанного функция Round будет возвращать следующие результаты при округлении чисел:
Ну и напоследок пример программы:
Обратите внимание в примере на закомментированную строку. Так делать нельзя, потому что в Паскале не допускается присваивать целочисленным переменным вещественные значения.
Также обратите внимание, что функция Round возвращает число типа Int64. Этот тип НЕ является порядковым типом данных. Это значит, что по идее функцию Round нельзя использовать в конструкциях, требующих применения порядковых типов. Например, с оператором case.
То есть по идее компилятор должен выдать ошибку, если в вашей программе будет что-то типа того: Однако я проверил. Программа компилируется и работает нормально. И всё же я не советую использовать в ваших программах конструкции, которые противоречат документации. Если необходимо использовать результат функции Round в подобных ситуациях, то лучше сначала присвоить результат какой-нибудь переменной порядкового типа, а потом уже эту переменную использовать с таким операторами, как case.
Функции Int, Round, RoundDown, RoundUp и Trunc в Power Apps
Round, RoundDown и RoundUp
Функции Round, RoundDown и RoundUp округляют число до указанного количества знаков после запятой (десятичных разрядов).
Число десятичных знаков, допускаемых для этих функций:
Int и Trunc
Функции Int и Trunc округляют число до целого (целое число без десятичной дроби):
Десятичные разряды нельзя указывать с помощью Trunc как это можно с Microsoft Excel. Вместо этого используйте RoundDown, когда это необходимо.
Таблицы с одним столбцом
Эти функции поддерживают таблицы с одним столбцом. При передаче одного числа возвращаемое значение является округленной версией такого числа. При передаче таблицы, содержащей один столбец с числами, возвращаемое значение представляет таблицу из одного столбца с округленными числами. Параметр DecimalPlaces может быть одним значением или таблицей с одним столбцом. Если в таблице с одним столбцом меньше значений, чем Число, для остальных значений используется ноль. Используйте ShowColumns и другие функции формирования таблиц для извлечения таблицы с одним столбцом из таблицы большего размера.
Синтаксис
Round( Number, DecimalPlaces )
RoundDown( Number, DecimalPlaces )
RoundUp( Number, DecimalPlaces )
Int(Число)
Trunc(Число)
Примеры
Округление до целого числа.
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).
Округление для таблицы значений с одним столбцом.
Уроки Паскаль
Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это функция Trunc, которая округляет дробное число до целого, отбрасывая дробную часть и функция Round, которая округляет дробное число до ближайшего целого.
В строке №7 присваиваем переменной «N» значение «4».
В строке №8 присваиваем переменной «A» значение 3,6. Учтите, что при записи дробного числа в программе между целой и дробной частью ставится точка (а не запятая как при обычной записи).
Строка №9. Здесь переменной вещественного типа B мы присваиваем значение переменной целого типа N. Фактически мы присвоили переменной «B» значение 4. Таким образом, получается, что в переменную типа Real можно записать значение переменной Integer (т.е. целое число). А вот записать вещественное число в переменную Integer нельзя. Если нам необходимо это сделать, то мы должны определить, что делать с дробной частью. И здесь есть 2 варианта.
Обратите внимание, на формат вывода на экран вещественных чисел. Паскаль выводит дробные числа на экран в виде числа с плавающей точкой (экспоненциальная форма). Эта запись является неудобной, поэтому для приведения ее к нормальному виду прибегают к форматированию. Для форматирования нужно в строке №10 (вывод на экран) сделать такие изменения: writeln(‘B=’,B:2:1). После переменной B мы через двоеточие записываем 2 числа. Первое число (в нашем случае «2») показывает, сколько всего знаков должно выводиться на экран, второе число («1») показывает количество знаков после запятой.
После внесения этих изменений в программу мы получим следующий результат:
ROUND (Transact-SQL)
Возвращает числовое значение, округленное до указанной длины или точности.
Синтаксические обозначения в Transact-SQL
Синтаксис
Ссылки на описание синтаксиса Transact-SQL для SQL Server 2014 и более ранних версий, см. в статье Документация по предыдущим версиям.
Аргументы
numeric_expression
Выражение категории точного числового или приблизительного числового типа данных, за исключением типа данных bit.
length
Точность, с которой должно быть округлено значение numeric_expression. Аргумент length должен быть выражением типа tinyint, smallint или int. Если аргумент length является положительным числом, значение numeric_expression округляется до числа десятичных разрядов, указанных в аргументе length. Если аргумент length является отрицательным числом, значение numeric_expression округляется слева от десятичной запятой, как указано в аргументе length.
function
Тип выполняемой операции. Аргумент function должен иметь тип tinyint, smallint или int. Если аргумент function не указан или имеет значение 0 (по умолчанию), значение numeric_expression округляется. Когда указывается значение, не равное 0, значение numeric_expression усекается.
Типы возвращаемых данных
Возвращает следующие типы данных.
Результат выражения | Возвращаемый тип |
---|---|
tinyint | int |
smallint | int |
int | int |
bigint | bigint |
Категория decimal и numeric (p, s) | decimal(p, s) |
Категории money и smallmoney | money |
Категории float и real | float |
Remarks
Функция ROUND всегда возвращает значение. Если аргумент length имеет отрицательное значение и больше числа знаков перед десятичной запятой, ROUND возвращает 0.
Функция ROUND возвращает округленное значение выражения numeric_expression независимо от типа данных, когда length является отрицательным числом.
SELECT ROUND(CAST (748.58 AS decimal (6,2)),-3);
Примеры
A. Использование функции ROUND и приближений
Б. Использование функции ROUND и округляющих аппроксимаций
В следующем примере показаны округление и аппроксимация.
В. Использование функции ROUND для усечения
В следующем примере используются две инструкции SELECT для демонстрации различия между округлением и усечением. Первая инструкция округляет результат. Вторая инструкция усекает результат.
Что такое round в паскале
Язык:
Русский
English
Округляет значение вещественного типа до значения целочисленного типа.
Объявление
Function Round(X : Real) : Longint;
Режим
Windows, Real, Protected
Замечания
X – выражение с реальным типом. Round возвращает значение типа Longint, которое является значением X, округленного к самому близкому целому числу. Если X – ровно посередине между двумя целыми числами, то результатом будет число с самой большой абсолютной величиной.
Если округленное значение X ненаходится внутри допустимого диапазона Longint, то происходит ошибка во время выполнения программы.
См. также
Пример
Язык:
Русский
English
Функция Round в Паскале округляет значение с плавающей точкой до ближайшего целого числа. Синтаксис:
function Round(X: ValReal) : Int64;
Функция Round округляет Х до ближайшего целого числа и возвращает значение, которое может быть как меньше, так и больше исходного значения вещественного числа Х.
О типе ValReal я рассказывал здесь.
Правило округления числа
Округление вещественного числа Х выполняется по следующему правилу:
Примеры округления чисел
Исходя из вышесказанного функция Round будет возвращать следующие результаты при округлении чисел:
Ну и напоследок пример программы:
Обратите внимание в примере на закомментированную строку. Так делать нельзя, потому что в Паскале не допускается присваивать целочисленным переменным вещественные значения.
Поэтому, если необходимо сложить две переменных – целую и вещественную, а результат поместить в целую, то надо использовать какую-либо из подпрограмм преобразования типов. Например, функцию Round.
Также обратите внимание, что функция Round возвращает число типа Int64. Этот тип НЕ является порядковым типом данных. Это значит, что по идее функцию Round нельзя использовать в конструкциях, требующих применения порядковых типов. Например, с оператором case.
То есть по идее компилятор должен выдать ошибку, если в вашей программе будет что-то типа того: Однако я проверил. Программа компилируется и работает нормально. И всё же я не советую использовать в ваших программах конструкции, которые противоречат документации. Если необходимо использовать результат функции Round в подобных ситуациях, то лучше сначала присвоить результат какой-нибудь переменной порядкового типа, а потом уже эту переменную использовать с таким операторами, как case.
Функция Round Pascal-Паскаль
Описание
Round: Округляет значение вещественного типа до значения целочисленного типа.
Объявление: | Function Round(X: Real): Longint; |
---|---|
Режим: | Windows, Real, Protected |
Замечания:
X – выражение с реальным типом. Round возвращает значение типа Longint, которое является значением X, округленного к самому близкому целому числу. Если X – ровно посередине между двумя целыми числами, то результатом будет число с самой большой абсолютной величиной.
Если округленное значение X ненаходится внутри допустимого диапазона Longint, то происходит ошибка во время выполнения программы.
Пример функции Round
Программирование
Исходники Pascal (127)
Справочник
Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту