Расчет происходит абсолютно правильно, учитывая условия.
Скидка 299 рублей на все товары.
Т.е. скидка 299 рублей делится на все товары пропорционально.
Если общая сумма покупки 2155 рублей, а скидка 299, то расчет происходит по следующему сценарию.
Для начала определяется общий процент скидки.
100*299/2155 = 13,87470997679814...% Т.е. Цена каждого товара должна составлять 100 - 13,87470997679814 = 86,12529002320186%
А затем (как описано в условии) ДЛЯ КАЖДОГО товара применяется эта скидка.
1. Новая цена товара за 389 руб = 389/100*86,12529002320186 = 335.028
2. Новая цена товара за 289 руб = 289/100*86,12529002320186 = 248,902
3. Новая цена товара за 929 руб = 929/100*86,12529002320186 = 800,104
4. Новая цена товара за 159 руб = 389/100*86,12529002320186 = 136,939
(335.028 * 2) + 248,902 + 800,104 + 136,939 = 1856.001.
Т.е. чтобы нивелировать погрешность округления попробуйте производить расчеты не с 1 знаком после запятой, а с 2-мя (лучше с 3-мя), тогда при подобных округлениях результат будет точнее...
Так что считается всё верно. Проблема в другом:
Нет скидки на корзину. И это логично. Ибо скидка применяется к чему-то конкретному. К товару, к предложению, к набору и т.д.
Как поступить конкретно Вам - даже в голову ничего не приходит.
1. В настройках интернет магазина изменить точность на .000
2. Написать в условиях акции что-то вроде (скидка до 300 рублей), оставил бы в условиях 299 (чтобы при всех округлениях не вылезть за пределы 300) и работал бы с копейками (в любом случае, как Вы пишите, цены с копейками у Вас имеются, потому сложностей для бухгалтеров не будет)
Скидка 299 рублей на все товары.
Т.е. скидка 299 рублей делится на все товары пропорционально.
Если общая сумма покупки 2155 рублей, а скидка 299, то расчет происходит по следующему сценарию.
Для начала определяется общий процент скидки.
100*299/2155 = 13,87470997679814...% Т.е. Цена каждого товара должна составлять 100 - 13,87470997679814 = 86,12529002320186%
А затем (как описано в условии) ДЛЯ КАЖДОГО товара применяется эта скидка.
1. Новая цена товара за 389 руб = 389/100*86,12529002320186 = 335.028
2. Новая цена товара за 289 руб = 289/100*86,12529002320186 = 248,902
3. Новая цена товара за 929 руб = 929/100*86,12529002320186 = 800,104
4. Новая цена товара за 159 руб = 389/100*86,12529002320186 = 136,939
(335.028 * 2) + 248,902 + 800,104 + 136,939 = 1856.001.
Т.е. чтобы нивелировать погрешность округления попробуйте производить расчеты не с 1 знаком после запятой, а с 2-мя (лучше с 3-мя), тогда при подобных округлениях результат будет точнее...
Так что считается всё верно. Проблема в другом:
Нет скидки на корзину. И это логично. Ибо скидка применяется к чему-то конкретному. К товару, к предложению, к набору и т.д.
Как поступить конкретно Вам - даже в голову ничего не приходит.
1. В настройках интернет магазина изменить точность на .000
Скрытый текст |
|---|
2. Написать в условиях акции что-то вроде (скидка до 300 рублей), оставил бы в условиях 299 (чтобы при всех округлениях не вылезть за пределы 300) и работал бы с копейками (в любом случае, как Вы пишите, цены с копейками у Вас имеются, потому сложностей для бухгалтеров не будет)