Задание 16. Вычисление рекуррентных выражений. ЕГЭ 2026 по информатике

За это задание ты можешь получить 1 балл. На решение дается около 2 минут. Уровень сложности: повышенный.
Средний процент выполнения: 54.9%
Ответом к заданию 16 по информатике может быть цифра (число) или слово.

Задачи для практики

Задача 1

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

  • F(n) = 2 * G(n - 5) + 10;
  • G(n) = n - 4, если n < 12;
  • G(n) = G(n - 4) * 2, если n ≥ 12.

Чему равно значение функции F(20)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return 2 * G(n - 5) + 10

@lru_cache(maxsize=None)
def G(n):
    if n < 12:
        return n - 4
    else:
        return  G(n - 4) * 2

for i in range(20):
    F(i)

print(F(20))
Ответ: 38
Показать решение
Бесплатный интенсив

Задача 2

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

  • F(n) = G(n) + G(n - 2);
  • G(n) = n², если n < 6;
  • G(n) = G(n - 1) + 2, если n ≥ 6.

Чему равно значение функции F(777)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return G(n) + G(n - 2)

@lru_cache(maxsize=None)
def G(n):
    if n < 6:
        return n ** 2
    else:
        return  G(n - 1) + 2

for i in range(777):
    F(i)

print(F(777))
Ответ: 3134
Показать решение
Бесплатный интенсив

Задача 3

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

  • F(n) = G(n - 2) + 5;
  • G(n) = n, если n < 5;
  • G(n) = G(n - 1) - 2, если n ≥ 5.

Чему равно значение функции F(10 001)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return G(n - 2) + 5

@lru_cache(maxsize=None)
def G(n):
    if n < 5:
        return n
    else:
        return G(n - 1) - 2

for i in range(10001):
    F(i)

print(F(10001))
Ответ: -19981
Показать решение
Бесплатный интенсив

Задача 4

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

  • F(n) = 4 * G(n - 6);
  • G(n) = n // 2, если n < 15; (// - целочисленное деление)
  • G(n) = G(n - 7) + 5, если n ≥ 15.

Чему равно значение функции F(9999)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return 4 * G(n - 6)

@lru_cache(maxsize=None)
def G(n):
    if n < 15:
        return n // 2
    else:
        return  G(n - 7) + 5

for i in range(9999):
    F(i)

print(F(9999))
Ответ: 28540
Показать решение
Бесплатный интенсив

Задача 5

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

  • F(n) = G(n - 3) + F(n - 1);
  • F(0) = 1, F(1) = 1, F(2) = 2;
  • G(n) = 1, если n < 5;
  • G(n) = G(n - 1) + G(n - 4), если n ≥ 5.

Чему равно значение функции F(100)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    if n == 0 or n == 1:
        return 1
    if n == 2:
        return 2
    return G(n - 3) + F(n - 1)

@lru_cache(maxsize=None)
def G(n):
    if n < 5:
        return 1
    else:
        return G(n - 1) + G(n - 4)

for i in range(100):
    F(i)

print(F(100))
Ответ: 54327237184328
Показать решение
Бесплатный интенсив

Задача 6

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

  • F(n) = F(n - 1) + G(n - 2);
  • F(0) = 2, F(1) = 3;
  • G(n) = n + 2, если n < 8;
  • G(n) = G(n - 4) + 1, если n ≥ 8.

Чему равно значение функции F(100)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    if n == 0:
        return 2
    elif n == 1:
        return 3
    return F(n - 1) + G(n - 2)

@lru_cache(maxsize=None)
def G(n):
    if n < 8:
        return n + 2
    else:
        return G(n - 4) + 1

for i in range(100):
    F(i)

print(F(100))
Ответ: 1809
Показать решение
Бесплатный интенсив

Задача 7

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

  • F(n) = G(n) * G(n - 4);
  • G(n) = 5, если n < 10;
  • G(n) = G(n - 5) + 1, если n ≥ 10.

Чему равно значение функции F(5000)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return G(n) * G(n - 4)

@lru_cache(maxsize=None)
def G(n):
    if n < 10:
        return 5
    else:
        return G(n - 5) + 1

for i in range(5000):
    F(i)

print(F(5000))
Ответ: 1007012
Показать решение
Бесплатный интенсив

Задача 8

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

  • F(n) = 3 * G(n - 4);
  • G(n) = n + 1, если n < 8;
  • G(n) = G(n - 3) + n, если n ≥ 8.

Чему равно значение функции F(12 345)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return 3 * G(n - 4)

@lru_cache(maxsize=None)
def G(n):
    if n < 8:
        return n + 1
    else:
        return  G(n - 3) + n

for i in range(12345):
    F(i)

print(F(12345))
Ответ: 76168650
Показать решение
Бесплатный интенсив

Задача 9

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

  • F(n) = G(n - 1) - G(n - 3);
  • G(n) = 2, если n < 7;
  • G(n) = G(n - 2) + 3, если n ≥ 7.

Чему равно значение функции F(9000)?

Решение
from functools import lru_cache

@lru_cache(maxsize=None)
def F(n):
    return G(n - 1) - G(n - 3)

@lru_cache(maxsize=None)
def G(n):
    if n < 7:
        return 2
    else:
        return G(n - 2) + 3

for i in range(9000):
    F(i)

print(F(9000))
Ответ: 3
Показать решение
Бесплатный интенсив

Задача 10

Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:

  • F(n) = 3, если n ≤ 30;
  • F(n) = −3 + 2F(n − 29), если 30 < n ≤ 250;
  • F(n) = 2 + F(n − 43), если 250 < n ≤ 900;
  • F(n) = 3 + F(n − 62), если n > 900.

Чему равно значение функции F(1400)?

Решение
def f(n):
    if n <= 30:
        return 3
    if 30 < n <= 250:
        return -3 + 2 * f(n - 29)
    elif 250 < n <= 900:
        return 2 + f(n - 43)
    elif n > 900:
        return 3 + f(n - 62)

print(f(1400))
    
Ответ: 58
Показать решение
Бесплатный интенсив

Задача 11

Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:

  • F(1) = 1;
  • F(2) = 4;
  • F(n) = F(n − 1) + (n − 1) · F(n − 2), если n > 2.

Чему равно значение выражения F(1604) / F(1600)? В ответе укажите только целую часть.

Решение
a = [0] * 1605
a[1] = 1
a[2] = 4
for n in range(3, 1605):
    a[n] = a[n-1] + (n-1) * a[n-2]
print(a[1604]/a[1600])
Ответ: 2697876
Показать решение
Бесплатный интенсив

Задача 12

Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:

  • F(n) = 2, если n < 20;
  • F(n) = 1 + 2F(n − 17), если 20 ≤ n < 150;
  • F(n) = −3 + F(n − 23), если 150 ≤ n < 1000;
  • F(n) = 2 + F(n − 42), если n ≥ 1000.

Чему равно значение функции F(1150)?

Решение
def f(n):
    if n < 20:
        return 2
    if 20 <= n < 150:
        return 1 + 2 * f(n - 17)
    elif 150 <= n < 1000:
        return -3 + f(n - 23)
    elif n > 1000:
        return 2 + f(n - 42)
print(f(1150))
Ответ: 280
Показать решение
Бесплатный интенсив

Задача 13

Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:

  • F(1) = 1;
  • F(2) = 3;
  • F(n) = F(n − 1) + n · F(n − 2), если n > 2.

Чему равно значение выражения F(1890) / F(1885)? В ответе укажите только целую часть.

Решение
a = [0] * 1891
a[1] = 1
a[2] = 3
for n in range(3, 1891):
    a[n] = a[n-1] + n * a[n-2]
print(a[1890]/a[1885])
Ответ: 164161991
Показать решение
Бесплатный интенсив

Задача 14

Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:

  • F(1) = 1, если n < 2;
  • F(n) = F(n/3) − 1, если n ≥ 2 и кратно 3;
  • F(n) = F(n − 1) + 20, если n ≥ 2 и не кратно 3.

Найдите количество значений n на отрезке [1; 100000], для которых F(n) равно 151.

Решение
def f(n):
    if n < 2:
        return 1
    if n >= 2 and n % 3 == 0:
        return f(n//3) - 1
    if n >= 2 and n % 3 != 0:
        return f(n-1) + 20

count = 0
for n in range(1, 100000):
    if f(n) == 151:
        count += 1
print(count)
    
Ответ: 5510
Показать решение
Бесплатный интенсив

Задача 15

Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:

  • F(1) = 1, если n < 2;
  • F(n) = F(n/3) − 1, если n ≥ 2 и кратно 3;
  • F(n) = F(n − 1) + 20, если n ≥ 2 и не кратно 3.

Найдите количество значений n на отрезке [1; 100000], для которых F(n) равно 152.

Решение
def f(n):
    if n < 2:
        return 1
    if n >= 2 and n % 3 == 0:
        return f(n//3) - 1
    if n >= 2 and n % 3 != 0:
        return f(n-1) + 20

count = 0
for n in range(1, 100000):
    if f(n) == 152:
        count += 1
print(count)
    
Ответ: 5211
Показать решение
Бесплатный интенсив

Задача 16

Функция F(n), где n - натуральное число, вычисляется по следующему правилу:

F(n) = 1, при n = 1;

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

F(n) = F(n-2)*n, при n > 1 нечётном

Чему равно значение выражения F(6115)/F(6112)?

Ответ округлите до целого.

Решение

Выразить одну функцию через другую не получится, поэтому выразим обе функции через третью.

F(6112) = F(6109)*6112

F(6115) = F(6113)*6115

F(6113) = F(6111)*6113

F(6111) = F(6109)*6111

Выражения F(6115)/F(6112) = (F(6113)*6115) / (F(6109)*6112) = (F(6111)*6113*6115) / (F(6109)*6112) = (F(6109)*6111*6113*6115) / (F(6109)*6112) = (6111*6113*6115) / 6112 = 37374878.999...

После округления ответ: 37374879

Ответ: 37374879
Показать решение
Бесплатный интенсив

Задача 17

Функция F(n), где n - натуральное число, вычисляется по следующему правилу:

F(n) = n, при n < 4;

F(n) = F(n-3)*3, при n > 3 кратном трём;

F(n) = F(n-1)+7, при n > 3, которое даёт остаток 1 при делении на 3;

F(n) = F(n-2)+n, при n > 3, которое даёт остаток 2 при делении на 3.

Чему равно значение выражения F(5000) - 3 * F(4995)?

Решение

Выразим функцию F(5000) через F(4995).

F(5000) = F(4998) + 5000

F(4998) = F(4995) * 3

Получается, что F(5000) = F(4995) * 3 + 5000

F(5000) - 3 * F(4995) = F(4995) * 3 + 5000 - 3 * F(4995) = 5000.

Ответ: 5000

Ответ: 5000
Показать решение
Бесплатный интенсив

Задача 18

Функция F(n), где n - натуральное число, вычисляется по следующему правилу:

F(n) = 1, при n < 3;

F(n) = F(n-1)*(n-2), при n > 2

Чему равно значение выражения F(4000)/F(3998)?

Решение

Выразим функцию F(4000) через F(3998).

F(4000) = F(3999) * 3998

F(3999) = F(3998) * 3997

Получается, что F(4000) = F(3999) * 3998 = F(3998) * 3997 * 3998

F(4000)/F(3998) = F(3998) * 3997 * 3998 / F(3998) = 3997 * 3998 = 15980006

Ответ: 15980006

Ответ: 15980006
Показать решение
Бесплатный интенсив

Задача 19

Функция F(n), где n - натуральное число, вычисляется по следующему правилу:

F(n) = n, при n < 4;

F(n) = F(n-3)*3, при n > 3 кратном трём;

F(n) = F(n-1)+n, при n > 3, которое даёт остаток 1 при делении на 3;

F(n) = F(n-2)+n, при n > 3, которое даёт остаток 2 при делении на 3.

Чему равно значение выражения F(7000) - 9 * F(6993)?

Решение

Выразим функцию F(7000) через F(6993).

F(7000) = F(6999) + 7000

F(6999) = F(6996) * 3

F(6996) = F(6993) * 3

Получается, что F(7000) = F(6996) * 3 + 7000 = F(6993) * 3 * 3 + 7000 = F(6993) * 9 + 7000

F(7000) - 9 * F(6993) = F(6993) * 9 - 9 * F(6993) = 7000.

Ответ: 7000

Ответ: 7000
Показать решение
Бесплатный интенсив

Задача 20

Функция F(n), где n - натуральное число, вычисляется по следующему правилу:

F(n) = 1, при n = 1;

F(n) = F(n-1)*n, при n > 1

Чему равно значение выражения F(2022)/F(2019)?

Решение

Выразим функцию F(2022) через F(2019).

F(2022) = F(2021) * 2022

F(2021) = F(2020) * 2021

F(2020) = F(2019) * 2020

Получается, что F(2022) = F(2020) * 2021 * 2022 = F(2019) * 2020 * 2021 * 2022

F(2022)/F(2019) = F(2019) * 2020 * 2021 * 2022 / F(2019) = 2020 * 2021 * 2022 = 8254653240

Ответ: 8254653240

Ответ: 8254653240
Показать решение
Бесплатный интенсив
Показать еще
  • Без воды
  • Ламповая атмосфера
  • Крутые преподаватели

ЕГЭ 2026: бесплатный курс
по информатике

На бесплатном демо-курсе ты:
  • Узнаешь всё про кодирование: что это такое и как происходит
  • Познакомишься с Условием Фано: как оно примняется и почему важно
  • Научишься считать колиечтсво информации и сколько под неё нужно выделить памяти
Получи бесплатный демо-доступ
Оставь заявку и займи место
на бесплатном курсе Турбо ЕГЭ
Нажимая на кнопку «Отправить», вы принимаете положение об обработке персональных данных.