Автор | Сообщение |
|
Отправлено: 07.04.21 21:11. Заголовок: Задача 3817
Добрый день! Задача 3817 Алгоритм вычисления значения функции F(n), где n – целое число, задан следующими соотношениями: F(1) = 1 F(n) = F(n/2) + 1, когда n ≥ 2 и чётное, F(n) = F(n - 1) + n, когда n ≥ 2 и нечётное. Назовите минимальное значение n, для которого F(n) равно 19. Решали двумя методами: через цикл пока и цикл для. Последнее решение прилагаю: def F(n): if n <= 1: return 1 if n % 2 == 0: return F(n / 2) + 1 else: return F(n - 1) + n for n in range(1, 1000): if F(n) == 19: print(n) В любом случае ответ дает 448. Что не так? вроде все прозрачно, но с ответом не сходится ((
|
|
|
Ответов - 1
[только новые]
|
|
|
| Администратор
|
Сообщение: 2674
|
|
Отправлено: 07.04.21 21:17. Заголовок: Спасибо, вы правы. О..
Спасибо, вы правы. Ответ исправлен.
|
|
|