Тема 16. Рекурсивные алгоритмы

16.02 Две функции

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела рекурсивные алгоритмы
Решаем задачу:

Ошибка.
Попробуйте повторить позже

Задача 1#25962

Ниже записаны две рекурсивные функции F  и G  :

F (n) = n, при n < 10

F (n) = F(n)⋅F (n − 2), при n > 9

G (n) = n⋅3, при n < 11

G (n) = F(n2)+ F (n2 + 1)+ F(nn), когда n > 10, и не делится на 7

Чему равно выражение G (10)(F(2)) + F(5)  ?

Показать ответ и решение

Рекурсивное решение
В задаче заданы два рекурсивных алгоритма – функции F(n)  и G (n )  . Для реализации создаём две пользовательские функции в Python с помощью def  . В функции F  через условный оператор if  задаём базовый случай при n < 10  , а в остальных случаях используем рекурсивную формулу F (n)∗F (n− 2)  . В функции G  через if  задаём базовый случай при n < 11  , иначе применяем рекурсивную формулу F (n2) +F (n2 + 1)+ F (nn)  для чисел, которые не делятся на 7. В завершение вычисляем значение G (10)F(2) + F(5)  и выводим результат.

def F(n):  # объявляем функцию F(n)
    if n < 10:  # базовый случай
        return n
    # рекурсивный случай, сюда попадем при n > 9
    return F(n) * F(n - 2)


def G(n):  # объявляем функцию G(n)
    if n < 11:  # базовый случай
        return n * 3
    # рекурсивный случай для n > 10 и не делящегося на 7
    if n % 7 != 0:
        return F(n ** 2) + F(n ** 2 + 1) + F(n * n)


# вычисляем и выводим результат
print(G(10) ** F(2) + F(5))

Ответ: 905

Специальные программы

Все специальные программы

Программа
лояльности v2.0

Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!

Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение

Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты

Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей

Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ

Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!

cyberpunkMouse
cyberpunkMouse
Рулетка
Вы можете получить скидку в рулетке!