Помогите решить задачку на округление

1. list770 20.04.19 15:01 Сейчас в теме
Здравствуйте. Посоветуйте, как можно покрасивше решить следующую задачу:

В двух регистрах происходит расчет суммы за месяц по дням.

В первый регистр записывается общая сумма целиком, рассчитывается так:

(224,133333333333333333333333333 * 9 дней) + (87,466666666666666666666666667 * 21 день) = 3854,00

Во второй регистр записывается сумма на каждый день: 9 раз по 224,13 и 21 раз по 87,47. Получается 3854,04

Можно ли как то сравнять общую сумму во втором регистре, не меняя в реквизите количество знаков после запятой до 27 цифр?
Найденные решения
2. VladimirB 16 20.04.19 15:13 Сейчас в теме
(1)
В первый регистр сразу писать с округлением
т.е. 224,13 и 87.47

Окр(224,133333333333333333333333333 ,2)
Окр(87,466666666666666666666666667 ,2)
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. VladimirB 16 20.04.19 15:13 Сейчас в теме
(1)
В первый регистр сразу писать с округлением
т.е. 224,13 и 87.47

Окр(224,133333333333333333333333333 ,2)
Окр(87,466666666666666666666666667 ,2)
5. list770 20.04.19 15:20 Сейчас в теме
(2)да, скорее всего так будет правильно
6. VladimirB 16 20.04.19 15:23 Сейчас в теме
(5) У вас первый регистр с разрядностью после точки больше 2-х ?
7. list770 20.04.19 15:25 Сейчас в теме
3. ishelper 20.04.19 15:15 Сейчас в теме
(1)
Можно ли как то сравнять общую сумму во втором регистре
Невозможно: округление суммы не обязательно равно сумме округлений, это - правило математики
не меняя в реквизите количество знаков после запятой до 27 цифр?
А что даст увеличение количества знаков?

Вы попробуйте для начала определиться - какая из сумм правильная: 3854,00 или 3854,04?
4. list770 20.04.19 15:19 Сейчас в теме
(3)
какая из сумм правильная: 3854,00 или 3854,04?
- хороший вопрос) смотря на каком калькуляторе сверять будут...
8. Xershi 1484 20.04.19 16:03 Сейчас в теме
(4) вопрос не на каком калькуляторе сверять, а по каким правилам.

НДС по 2 счётам слитым в одну реализацию с группировкой одинаковых позиций даёт такой же эффект.
9. Oldsad 22.04.19 05:01 Сейчас в теме
(4)

Если решите что первая сумма правильная, есть довольно простой алгоритм для корректировки ошибки округления:
	СуммаОсталось = 7;
	КолвоОсталось = 9;
	
	Пока КолвоОсталось > 0 Цикл
		ТекСуммаПозиции = Окр (СуммаОсталось / КолвоОсталось, 2);
		Сообщить (ТекСуммаПозиции);
		
		СуммаОсталось = СуммаОсталось - ТекСуммаПозиции;
		КолвоОсталось = КолвоОсталось - 1;
	КонецЦикла;
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот