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

Задача . 6. Остывание до заданной точности


Задача

Темы:

Остывание до установившейся температуры

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

Нужно смоделировать остывание или нагрев тела в среде с постоянной температурой. На каждом шаге изменение тем больше, чем сильнее текущая температура тела отличается от температуры среды.

Подобные модели применяются для приближённого расчёта теплообмена и для определения момента, когда систему уже можно считать практически установившейся.

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

Пусть Tn — температура тела после n шагов, а Tenv — постоянная температура окружающей среды.

Начальное значение T0 задаётся во входных данных.

Температура на следующем шаге:

Tn+1 = Tn − k(Tn − Tenv),

где 0 < k < 1.

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

|TN − TN−1| < eps.

Температура TN считается итоговой.

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

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

T Tenv k eps
  • T — начальная температура тела;
  • Tenv — температура окружающей среды;
  • k — коэффициент теплообмена, 0 < k < 1;
  • eps — требуемая точность остановки процесса.

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

Выведите:

N T
  • N — количество выполненных шагов;
  • T — температура после последнего шага.

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


Примеры
№Входные данныеВыходные данные
1
90 20 0.1 0.001
86 20.008127
2
80 25 0.2 0.01
33 25.034860
Статистика успешных решений по компиляторам
 Кол-во
Python18
Комментарий учителя