В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия

Напишите программу, вычисления рекурсивной функции. Алгоритм вычисления значения функции F(n), где n – целое число, задан следующими соотношениями: F(0) = 0

F(n) = F(n/2), при чётном n > 0

F(n) = F(n - 1) + 3, при нечётном n > 0

Сколько существует значений n, принадлежащих отрезку [1; 1000], для которых F(n) равно 18?

ответом на задачи является программа на языке python.

Показать ответ
Ответ:
Маргарита5515
Маргарита5515
27.01.2022 10:20

Код:

def f(n):

   if n == 0:

       return 0

   elif n > 0 and n % 2 == 0:

       return f(n/2)

   elif n > 0 and n % 2 != 0:

       return f(n-1) + 3

counter = 0

for i in range(1, 1001):

   if f(i) == 18:

       counter += 1

print(counter)

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота