Функция 1С Окр(Число) производит округление чисел 1С нужным способом. По-умолчанию – до целого.
Например:
- Для округления числе 1С выполняем функцию 1С Окр(22.55)
- 1С возвращает 22
Во-первых с помощью 1С ОКР можно проводить округление дробной части чисел 1С (то, что после запятой), например до сотых двух знаков):
Результат = Окр(15.2233, 2); //15.22
Во-вторых с помощью 1С ОКР можно проводить округление целой части чисел 1С (то, что до запятой), например до тысяч (трех знаков):
Результат = Окр(15333, -3); //15000
И наконец, третье. Как известно если остаток меньше 5 – то округляется до 0, а если больше 5, то округляется до 1.
Например:
- 15.33 округляем как 15.3
- 15.35 округляем как 15.4
- 15.37 округляем как 15.4.
С помощью 1С ОКР можно изменить этот порядок:
- 15.33 округляем как 15.3
- 15.35 округляем как 15.3
- 15.37 округляем как 15.4.
[VIP_CONTENT]
Результат = Окр(15.35, 1, РежимОкругления.Окр15как10); //15.3
//Обратите внимание, 15.36 и выше в любом случае округляются в большую сторону
[/VIP_CONTENT]
Добавим в наш калькулятор новые кнопки «Окр».
Для операции нужен только один параметр, поэтому результат будет выводить сразу же по нажатию кнопки операции.
Чтобы узнать какую часть округлять и на сколько разрадов – запросим у пользователя число с помощью ВвестиЗначение().
В обработчик кнопки добавим новую ветку (как добавить новую ветку смотрите Сложение, вычитание, деление и умножение в 1С).
Пример программного кода:
[VIP_CONTENT]
//будем округлять до 2х символов
Если ИмяОперации = "Окр" Тогда
КолвоРазрядов = 0; //создаем переменную с типом число
ВвестиЗначение(КолвоРазрядов); //просим пользователя ввести число
Поле = Окр(Поле, КолвоРазрядов); //используем число как второй параметр, округляем введенное в поле число и сразу же выводим туда же результат
КонецЕсли; //в калькуляторе у нас будет ИначеЕсли…
[/VIP_CONTENT]