Реши задачу : в конце 2019 года оператор связи предложил абоненту перейти на новый тариф, условия которого приведены в таблице.
Не вижу самой таблицы условий. Пришлите, пожалуйста, данные из таблицы (условия двух тарифов: фикс. стоимость, включено минут/сообщений/трафика, цены за дополнительные единицы, возможные единоразовые платежи за переход и т.д.). Тогда могу посчитать точно.
Пока могу предложить схему решения типичной задачи сравнения тарифов:
Что нужно определить
- Текущий тариф: фикс. месячная плата F1; включено: M_incl1 минут, SMS_incl1, D_incl1 МБ/ГБ; цена за доп. единицу: p1_min за минуту, p1_SMS за сообщение, p1_data за МБ.
- Новый тариф: аналогично F2, M_incl2, SMS_incl2, D_incl2, цены p2_min, p2_SMS, p2_data.
- При необходимости: единовременная плата за переход K (или другие дополнительные платежи).
Расчёт для одного месяца
- Стоимость на тарифе 1: C1 = F1 + max(0, M_used - M_incl1) * p1_min + max(0, SMS_used - SMS_incl1) * p1_SMS + max(0, D_used - D_incl1) * p1_data.
- Стоимость на тарифе 2: C2 = F2 + max(0, M_used - M_incl2) * p2_min + max(0, SMS_used - SMS_incl2) * p2_SMS + max(0, D_used - D_incl2) * p2_data.
Сравнение
- Если C2 < C1, новый тариф выгоднее по текущему месяцу (без учёта перехода).
- Если переход требует одного разового платежа K, то смотрим общие затраты за N месяцев: N * C2 + K vs N * C1. Найдите точку безубыточности t = ceil(K / (C1 - C2)) (при C1 > C2). После t месяцев переход окупится.
Дополнительные моменты
- Учитывайте срок действия тарифа и штрафы за досрочное расторжение старого договора.
- Если данные включены в другой тариф (например, безлимит на сеть, роуминг, ночной трафик и т. п.), включите их в расчёт.
- Проверьте, есть ли сезонные/пакетные акции или лимиты на скорость/обновление.
Готов решить точно, как только пришлёте таблицу или перепишете условия двух тарифов (числа). Если хотите, могу привести наглядный пример с вымышленными числами, чтобы показать шаг за шагом вычисления.