Задание 16. Информатика. ЕГЭ. Поляков-7238
- Просмотры: 93
- Изменено: 24 ноября 2024
Алгоритм вычисления значения функции \(F(n)\), где \(n\) – натуральное число, задан следующими соотношениями:
\(F(n) = n\), если \(n \geqslant 5000\),
\(F(n) = n \cdot F(n + 1)\), если \(n < 5000\) и \(n\) не делится на \(5\);
\(F(n) = n \cdot F(n + 2) / 5\), если \(n < 5000\) и \(n\) делится на \(5\).
Чему равно значение выражения \(F(4975) / F(4978)\)?
Решение:
Python
F = {5000: 5000, 5001: 5001}
for n in range(4999, 4974, -1):
if n % 5:
F[n] = n * F[n+1]
else:
F[n] = n * F[n+2] // 5
print(F[4975] // F[4978])
Ответ: \(4952115\)