Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Метод округления 1С          
vbi Подменю пользователя
сообщение 13.03.13, 11:57
Сообщение #1

Оратор
Иконка группы
Группа: Местный
Сообщений: 373
Из: Украина, Луцк
Спасибо сказали: 72 раз
Рейтинг: 0

Почему 1С функцией Окр() округляет, скажем, число 0,8446 до 0,84? Ведь правильно 0,85. Получается 1С видит это число как 0,844.


Signature
Впроваджую, супроводжую

DrLivsi Подменю пользователя
сообщение 13.03.13, 12:07
Сообщение #2

Завсегдатай
****
Группа: Пользователи
Сообщений: 148
Из: Киев
Спасибо сказали: 20 раз
Рейтинг: 0

Встроенные функции языка
Окр (Round)
Синтаксис:
Окр(<Число>, <Разрядность>, <Режим округления>)
Параметры:
<Число> (обязательный)
Тип: Число. Исходное число.
<Разрядность> (необязательный)
Тип: Число. Определяет число знаков дробной части, до которых производится округление. Если параметр отрицательный, то число округляется до соответствующего разряда в целой части, начиная с младших разрядов.
Параметр обязательный, если указан параметр <Режим округления>.
Значение по умолчанию: 0
<Режим округления> (необязательный)
Тип: РежимОкругления. Определяет режим округления. Помимо системного перечисления допускается использование числового параметра: 0 - если при округлении 1.5 = 1; 1 - если при округлении 1.5 = 2.
Значение по умолчанию: Окр15как20
Возвращаемое значение:
Тип: Число. Число, полученное в результате округления.
Описание:
Округляет исходное число до нужной разрядности в соответствии с заданным режимом округления.
Пример:
// Округлим цену до сотен рублей
ОкругленнаяЦена = Окр(Цена, -2);

// Округлим цену до копеек
ОкругленнаяЦена = Окр(Цена, 2);

alex040269 Подменю пользователя
сообщение 13.03.13, 12:08
Сообщение #3

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

Цитата(vbi @ 13.03.13, 11:57) *
Почему 1С функцией Окр() округляет, скажем, число 0,8446 до 0,84? Ведь правильно 0,85. Получается 1С видит это число как 0,844.

из каких соображений? 0,8446 ~ 0.845 ~ 0.85?
это не правильно 46 ближе к 0 чем 100!


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

Спасибо сказали: vbi,

Vofka Подменю пользователя
сообщение 13.03.13, 12:08
Сообщение #4

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Неправильно smile.gif . Помню на одной работе с коллегами спорили на эту тему: я тоже считал как вы сейчас, но осознал свою ошибку smile.gif . А если бы вы округляли до 1 знака, тогда по вашей логике должно было бы получиться 0,9: 6 округляет предыдущущю цифру до 5, эта 5 предыдущую 4 до 5 и эта 5 уже 8 до 9. Но это не правильно.

Понятно?

Сообщение отредактировал Vofka - 13.03.13, 12:09

Спасибо сказали: ignsv, vbi,

Petre Подменю пользователя
сообщение 13.03.13, 13:23
Сообщение #5

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Это еще ничего. Вот финансовое округление веселее...


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

vbi Подменю пользователя
сообщение 13.03.13, 14:26
Сообщение #6

Оратор
Иконка группы
Группа: Местный
Сообщений: 373
Из: Украина, Луцк
Спасибо сказали: 72 раз
Рейтинг: 0

Я понял.


Signature
Впроваджую, супроводжую

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 23.04.24, 21:37
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!