#499 Применение скидки к корзине покупателя 2
Вы — backend-разработчик в интернет-магазине. Дела идут в гору и магазин решил повысить лояльность покупателей, предоставляя им персональные скидки.
К вам обратился product owner с задачей создать простую систему лояльности, которая предоставляет процентную скидку на корзину.
Размер скидки зависит от покупателя. Аналитики уже определили, какие скидки должны быть предоставлены покупателям.
Определения:
Корзина - список покупок покупателя.
Покупка:
-
idтовара; - Цена;
- Итоговая стоимость c учетом скидки.
Задача
Написать часть новой системы лояльности, которая применяет скидку покупателя к корзине:
-
На вход получает
idпокупателя и корзину; - Вычисляет и применяет скидки;
- Возвращает корзину, в которой учтены скидки;
- Все расчёты в рублях, точность до копеек. Округления по математическим правилам.
Есть два вида скидки (не могут прийти одновременно):
- Процент от суммы корзины;
- Фиксированная скидка.
Сумма скидки распределяется равномерно между товарами, пропорционально цене товара.
Примеры:
Скидка 50%, в корзине товары на 50р и 100р. Скидка 25р и 50р;
Скидка 10р, в корзине товары на 20р и 30р. Скидка 4р и 6р;
Скидка 10р, в корзине товары на 1р и 99р. Скидка 10коп и 9р 90коп.
Разбор вопроса
Войди, чтобы начать диалог
Ментор ведёт диалог по текущему вопросу и учитывает предыдущие сообщения.
Войти
Доступно с Premium
Это лишь одно из решений, доступных с Premium. А ещё:
- 250+ продвинутых лекций
- 1300+ практических заданий
- 500+ решений задач с реальных собеседований
- Именные сертификаты Java Hub
- Расширенный доступ к AI-ментору