Логика ступеней несложная: ниже первого порога действует базовая цена, с определённого количества (например, от полусотни штук) она уже другая, следующий порог — ещё одна цена, и так по возрастанию объёма. Важно, чтобы границы порогов и сами цены задавались не в теле скрипта, а через отдельный файл настроек, доступный без правки основного кода — прайс у нас живой и корректируется в течение года. Отдельно прошу продумать форматирование: суммы должны читаться легко, с разделением тысяч и явным указанием валюты.
Из обязательных вещей отмечу:
— поле ввода количества, одинаково удобное на телефоне и на компьютере
— вывод не только итоговой цены, но и размера экономии в деньгах и процентах
— защиту поля от отрицательных чисел, нулей и любых нецифровых символов
— возможность быстро добавить новую ступень или изменить границу существующей