Олимпиадный тренинг

Задача . 7. Зарядка конденсатора до заданной точности


Задача

Темы:

Зарядка конденсатора

Что моделирует программа

Конденсатор постепенно заряжается и всё ближе подходит к некоторому максимальному заряду. Чем меньше остаётся до предельного значения, тем меньше становится прибавка за один шаг.

Такие процессы характерны для систем, которые постепенно приближаются к устойчивому состоянию: электрических цепей, тепловых процессов, наполнения резервуаров с обратной связью.

Математическая модель

Пусть Qmax — предельный заряд, а Qn — заряд после n шагов.

В начальный момент:

Q0 = 0.

За следующий шаг заряд становится равным

Qn+1 = Qn + k(Qmax − Qn),

где 0 < k < 1.

Нужно найти первый номер N ≥ 1, для которого

|QN − QN−1| < eps.

Значение QN считается итоговым.

Входные данные

В одной строке вводятся три вещественных числа:

Qmax k eps
  • Qmax — предельный заряд конденсатора;
  • k — доля недостающего заряда, добавляемая за один шаг, 0 < k < 1;
  • eps — требуемая точность остановки процесса.

Выходные данные

Выведите:

N Q
  • N — количество выполненных шагов;
  • Q — заряд после последнего шага.

Q выведите ровно с 6 знаками после точки.


Примеры
№Входные данныеВыходные данные
1
100 0.1 0.001
89 99.991536
2
5 0.25 0.0001
34 4.999717
Статистика успешных решений по компиляторам
 Кол-во
Python13
Комментарий учителя