v7: Округление 0.5 в 1с 7.7 #702539


#0 by kobzon
Сделали повышение цен на продукцию. В 1с ПУБ с помощью обработки формирования цен, произвели наценку 5%. Чтобы цены были более-менее круглыми, сделали округление до 0.5. Но как оказалось 1с округляет по своему. И цену 116,60 округляет до 117 рублей. Вроде 60 копеек это не 90. Можно как то сделать чтобы была золотая середина? Или сказать начальству что так и должно быть - не крохоборствуйте?
#1 by НеБорисНуралиев
А по вашему 116,60 до скольки округлить нужно?
#2 by ДенисЧ
по правилам арифметики Окр(116.6,1) = 117. Бегом в школу (третий класс, по-моему)
#3 by kobzon
Да я знаю. Но им хочется чтобы до 75 копеек выставлялось 50 ком, а после уже рубль.
#4 by НеБорисНуралиев
Это уже не округление. Пишите свой алгоритм.
#5 by kobzon
И в том то и дело что не Окр(116.6,1) = 117, а Окр(116.6,0.5) = 117.
#6 by kobzon
Я с этими копейками с ума сойду. По мне так сделать до рубля рас это базовый тип цент.
#7 by fvadim
курим справку по Окр, 0.5 тут вообще отношения к желаемому результату не имеет
#8 by fvadim
решение в
#9 by ДенисЧ
Встроенные функции языка (Script functions) Окр (Round) Синтаксис: Окр(<Число>, <Разрядность>, <РежимОкругления>) Параметры: Тип: Число. Тип: Число. Определяет число знаков дробной части, до которых производится округление. Если параметр отрицательный, то число округляется до соответствующего разряда в целой части, начиная с младших разрядов. Параметр обязательный, если указан параметр <РежимОкругления>. Значение по умолчанию: 0 Как разрядлность может быть ползнака?
#11 by VladZ
+10 Но это не округление.
#12 by kobzon
Да. Фигня получается. Но не очень правильно что цена 100.51 Округлится до 101.
#13 by Mikeware
если 0.5 округлить до литра на рыло....
#14 by ДенисЧ
А это уже забота твоя... То есть не твоя, конечно. А программиста. Который реализует нужные алгоритмы.
#15 by Mikeware
Жадничают они...  нет у них программиста...
#16 by kobzon
Он тут не нужен. Ребят я вопрос задал на уровне пользователя. Я понимаю что многие в папиных трусах.
#17 by ДенисЧ
Ты не на уровне пользователя задал вопрос. А на уровне дошкольника.
#18 by ДенисЧ
На продажников есть, на ламерьё есть, а на программиста нет? Что ж, туда и дорога...
#19 by PR
Умножить на 2, округлить до 0 знаков после запятой, поделить пополам. Задачка на 10 секунд мозговой деятельности.
#20 by fvadim
бггг, "не очень правильно". одноэс предлагает 2 варианта округления - в большую и в меньшую, остальные хотелки ручками, в - решение.
#21 by Ненавижу 1С
Окр(исходнаяЦена / 0,5) * 0,5;
#22 by kobzon
, Спасибо!
#23 by VladZ
Информация к размышлению: исходная цена: 11,75. Моя функция приведет к    11,5 Функция в - к 12. Решайте, как вам "правильнее"
#24 by Ненавижу 1С
у тебя к нижнему значению, у меня округляет
#25 by floody
Это не подойдет? Так и не понял, как автору нужно округлять.
#26 by kobzon
Это стандартное округление в 1с. Видимо не подошло.
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С