Как сделать округление в большую сторону в с

Добавил пользователь Владимир З.
Обновлено: 02.09.2024

На "Листе2" есть ячейки с данными, которые могут быть от 0 до бесконечности с шагом 0.5.

Для расчетов в "Листе1" необходимо использовать значение без изменений. НО!

Для расчетов в "Листе3" необходимо значение из "Листа2" округлять в большую сторону.

Можно ли как-то это сделать?

Пример:

На втором листе есть значение 1.5.

Для формулы в первом листе мне необходимо использовать это значение - 1.5.

Для формулы в третьем листе мне необходимо округлить значение в большую сторону и использовать - 2.

В Excel часто используют округление чисел. В данной заметке рассмотрим разные типы округления, которые встречаются на практике.

Некоторые новички допускают ошибку, пытаясь произвести округление с помощью формата числа.

Формат числа для отображения знаков после запятой

Формат никак не влияет на точность числа в ячейке. Поэтому не стоит надеяться на формат, когда нужно реальное округление.

Функция ОКРУГЛ в Excel

Для обычного округления числа по математическим правилам существует функция ОКРУГЛ, которая имеет следующий синтаксис:

ОКРУГЛ(число или ссылка на округляемое число; количество оставляемых знаков).

число или ссылка на округляемое число – исходное число для округления;

количество оставляемых знаков – количество знаков после запятой.

Например, формула округления в Excel до двух знаков после запятой выглядит так.

Функция ОКРУГЛ

Чтобы получить формулу округления в Excel до целого числа, во втором аргументе нужно поставить 0.

Встречаются и более сложные ситуации. Как, например, округлить до тысяч (три последние цифры являются нулями)? Многие поступают так. Делят число на 1 000, округляют до целого и затем снова умножают на 1 000. Это не лучший способ.

Функция ОКРУГЛ умеет округлять не только после запятой, но и до запятой, т.е. до тысяч, миллионов и т.д. Например, чтобы число 123456789 округлить до тысяч и получить 123457000, точность указывается с минусом.

Округление до тысяч

На этом формулы округления в Эксель не заканчиваются.

ОКРУГЛВВЕРХ и ОКРУГЛВНИЗ

В Excel есть формулы округления в большую и меньшую сторону независимо от последних цифр числа. Например, расчетные цены округляют вверх, чтобы не уменьшить прибыль; возраст человека округляют вниз до целого, чтобы узнать полное количество лет. Короче, для этих целей придуманы функции ОКРУГЛВВЕРХ и ОКРУГЛВНИЗ.

okrugl-04

Данные функции имеют такие же параметры, как и ОКРУГЛ (ссылка на число и количество знаков до или после запятой).

ОКРУГЛТ

Довольно полезная функция ОКРУГЛТ. С ее помощью можно добиться округления не только до нужного разряда (слева или справа от запятой), но и вообще до нужной точности (кратности). К примеру, нужно рассчитать заказ изделий в штуках, но так, чтобы он был равен целому количеству ящиков. Если в ящике 6 шт, то заказываемое количество должно быть кратно шести. Или другой пример. Нужно, чтобы расчетная цена заканчивалась либо на 00, либо на 50, то есть имела кратность 50 рублей. Функция ОКРУГЛТ легко решает такие задачи.

Очень, очень правильная функция. Позволяет избежать 3-х промежуточных расчетов (разделить на кратность, округлить до целого и снова умножить на кратность, как я сам делал, пока не узнал про эту формулу).

ОКРВВЕРХ.МАТ и ОКРВНИЗ.МАТ

Это были основные формулы округления в Excel. Но есть еще парочку, которые используются реже.

Функция ЦЕЛОЕ в Excel отбрасывает дробную часть и таким образом округляет вниз до ближайшего целого. Будет полезна при расчете целого количество лет между датами (возраст человека).

Функции ЧЁТН и НЕЧЁТ округляют числа до ближайшего четного или нечетного значения соответственно.

Видеоуроки ниже показываю основные приемы округления, а также некоторые трюки.

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

В Python для округления доступны функции round() , int() и модуль math . Последний дополнительно импортируется.

Встроенные функции

Для операции округления в Python есть встроенные функции — round() и int()

round

round(number[, ndigits]) — округляет число (number) до ndigits знаков после запятой. Это стандартная функция, которая для выполнения не требует подключения модуля math.

По умолчанию операция проводится до нуля знаков — до ближайшего целого числа. Например:

round(3.5) > 4 round(3.75, 1) > 3.8

Чтобы получить целый показатель, результат преобразовывают в int .

Синтаксически функция вызывается двумя способами.

  1. round(x) — это округление числа до целого, которое расположено ближе всего. Если дробная часть равна 0,5, то округляют до ближайшего четного значения.
  2. round(x, n) — данные х округляют до n знаков после точки. Если округление проходит до сотых, то n равен "2", если до тысячных — "3" и т.д.

int — встроенная функция, не требующая подключения дополнительных модулей. Её функция — преобразование действительных значений к целому путем округления в сторону нуля. Например:

int(5.9) > 5 int(-5.77) > -5

Для положительных чисел функция int аналогична функции math.floor() , а для отрицательных — аналогично math.ceil() . Например:

import math math.floor(3.999) > 3 math.ceil(3.999) > 4

? Чтобы число по int преобразовать по математическим правилам, нужно выполнить следующие действия.

  1. Если число положительное, добавить к нему 0,5;
  2. Если число отрицательное, добавить -0,5.

Синтаксически преобразование оформляется так:

num = 5.77 int(num + (0.5 if num > 0 else -0.5)) > 6

Функции из библиотеки Math

Модуль необходим в Python. Он предоставляет пользователю широкий функционал работы с числами. Для обработки алгоритмов сначала проводят импорт модуля.

math.ceil

Функция преобразовывает значение в большую сторону (вверх). Этот термин применяется и в математике. Он означает число, которое равно или больше заданного.

Любая дробь находится между двумя целыми числами. Например, 2.3 лежит между 2 и 3. Функция ceil() определяет большую сторону и возводит к нему результат преобразования. Например:

import math math.ceil(3.25) > 4

Алгоритм определяет большую границу интервала с учетом знака:

import math math.ceil(-3.25) > -3

math.floor

math.floor() действует противоположно math.ceil() — округляет дробное значение до ближайшего целого, которое меньше или равно исходному. Округление происходит в меньшую сторону (вниз):

import math math.floor(3.9) > 3 math.floor(-2.1) > -3

При округлении учитывается знак перед данными.

math.trunc

Функция характеризуется отбрасыванием дробной части. После преобразования получается целое значение без учета дроби. Такой алгоритм не является округлением в арифметическом смысле. В Пайтон просто игнорируется дробь независимо от ее значения:

import math math.trunc(7.11) > 7 math.trunc(-2.1) -2

? Избавиться от дроби можно без подключения модуля. Для этого есть стандартная функция int Она преобразовывает дробные числа в целые путем игнорирования дроби.

Различие округления в Python 2 и Python 3

В Python 2 и Python 3 реализованы разные принципы округления.

В Python 2 используется арифметическое округление. В нем наблюдается большое количество погрешностей, что приводит к неточностям в процессе вычислений.

Во втором Python есть только 4 цифры, которые ведут к преобразованию к меньшему значению — 1, 2, 3 и 4. Также 5 цифр, которые приводят к большему значению — 5, 6, 7, 8, 9. Такое неравное распределение ведет к тому, что погрешность постоянно нарастает.

Python 2 по правилам арифметического округления преобразует число 5,685 в 5,68 до второго знака. Такая погрешность связана с тем, что десятичные цифры float в двоичном коде невозможно корректно представить.

В Python 3 используются принципы банковского округления. Это означает, что преобразование производится к ближайшему четному. В таком случае также не удается полностью избежать возникающих ошибок, но программисты добиваются точности в подсчетах.

2,5 по правилам банковского преобразования будет равно 2, а 3,5 = 4 (значения возводятся к близкому четному). Минимизировать погрешности можно благодаря практически равной вероятности, что перед пятеркой будет четное или нечетное число.

В данной статье будет рассмотрено как проводить округление в1С 8.3 в большую сторону при помощи специальных функций. Также будут приведены примеры для определения округления в большую сторону в 1С.

1. Функция округления числа



Рис. 1 Пример стандартного вида этой функции на скриншоте с кодом для серверного применения



Рис. 2 Округление в большую сторону в 1С

2. Применение для округления суммы в 1С

Рассмотрим, где можно на практике применять округление в большую сторону в 1С.



Рис. 3 Округление суммы в 1С

3. Режимы округления в 1С 8

Также следует уделить внимание и другим режимам округления в системе 1С 8:

· Округление до первого знака после запятой при условии, что знак меньше пяти:



Рис. 4 Код для округления в 1С 8

· Округление до первого знака после запятой при условии, что знак больше, либо равен пяти:



Рис. 5 Пример кода округления 1С 8.3

· Округление до N-ного знака после запятой в случае, если N+1 = 5, а все остальные знаки равны нулям, то округляться будет по третьему параметру внутри функции по округлению числа:



Рис. 6 Функция округления числа

· Округление на основании целой части заданного числа, данная функция может быть также рассмотрена, как округление числа в большую сторону:



Рис. 7 Функция округления числа в большую сторону в 1С

Вас могут заинтересовать следующие статьи:

94 [PROP_CODE] => TAGS2 [TITLE] => Вас могут заинтересовать следующие семинары: ) --> 95 [PROP_CODE] => TAGS [TITLE] => Вас могут заинтересовать следующие вебинары: ) -->

Вас могут заинтересовать следующие вебинары:

Программирование в 1С [1] => 1С:Бухгалтерия [2] => 1С:Управление производственным предприятием [3] => 1С: Розница [4] => 1С: CRM [5] => 1С: Управление торговлей [6] => Бюджетирование [7] => СКД [8] => 1С: Конвертация данных [9] => Администрирование 1С [10] => Конвертация данных [11] => Лицензии 1С [12] => Оптимизация [13] => 1С: Документооборот [14] => 1С: ERP [15] => Транспортная логистика [16] => Техническое задание [17] => Продажи [18] => Ценообразование [19] => Планирование [20] => MS SQL Server [21] => Полезные обработки [22] => МСФО [23] => Отчеты в 1С [24] => XML [25] => Внедрение ERP [26] => Перенос данных [27] => Торговое оборудование [28] => РСБУ [29] => 1С:Управление корпоративными финансами [30] => 1С: Колледж [31] => 1С: Аренда и управление недвижимостью [32] => Финансовый учет ) -->

Читайте также: