1С ОКР — округление чисел 1С

Функция 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]