КЭС: 3.7 Рекурсия. Рекурсивные процедуры и функции. Использование стека для организации рекурсивных вызовов
Рекурсивные функции с возвращаемыми значениями
Алгоритм вычисления значения функции F(n), где n — целое неотрицательное число, задан следующими соотношениями:
F(n) = 0, при n ≤ 1;
F(n) = F(n − 1) + 3n2, если n > 1 и при этом нечётно;
F(n) = n / 2 + F(n − 1) + 2, если n > 1 и при этом чётно.
Чему равно значение функции F(49)? В ответе запишите только целое число.
def F(n):
if n <= 1:
return 0
if n % 2 == 1:
return F(n-1) + 3*n*n
return n // 2 + F(n-1) + 2
print(F(49))
Алгоритмы, опирающиеся на несколько предыдущих значений
Последовательность чисел трибоначчи задается рекуррентным соотношением:
F(1) = 0
F(2) = 1
F(3) = 1
F(n) = F(n–3) + F(n–2) + F(n–1), при n >3, где n – натуральное число.
Чему равно девятое число в последовательности трибоначчи?
def F(n):
if n == 1:
return 1
if n == 2:
return 1
if n > 2:
return F(n-2) + F(n-1)
print(F(9))
Алгоритм вычисления значения функции F(n), где n — целое неотрицательное число, задан следующими соотношениями: F(0) = 0;
F(n) = F(n − 1) + 1, если n нечётно;
F(n) = F(n / 2), если n > 0 и при этом n чётно.
Укажите количество таких значений n < 1 000 000 000, для которых F(n) = 3.
3 = 30! = 4060
С 30 3!*27!
3. Алгоритмы, опирающиеся на одно предыдущее значение
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(1) = 1
F(n) = F(n–1) * n, при n >1
Чему равно значение функции F(5)? В ответе запишите только натуральное число.
def F(n):
if n == 1:
return 1
if n > 1:
return F(n-1) * n
print(F(5))
Задание 16 ЕГЭ по информатике, ФИПИ
Наиболее вероятный прототип. 20.10.2025
Алгоритм вычисления функции F(n), где n – целое число, задан следующими соотношениями:
F(n) = n, если n < 10;
F(n) = (n – 2) × F(n – 5), если n ≥ 10.
Чему равно значение выражения (F(3220) – 2 × F(3215)) / F(3210)?
В ответе запишите целую часть полученного числа.
Решение:
Итеративное заполнение массива:
n_max = 3220
f = [0] * (n_max + 1)
for n in range(0, 10):
f[n] = n
for n in range(10, n_max + 1):
f[n] = (n - 2) * f[n - 5]
print(int((f[3220] - 2 * f[3215]) / f[3210]))
Рекурсия с кэшированием:
from functools import *
@lru_cache(None)
def f(n):
if n<10: return n
return (n-2)*f(n-5)
for n in range(4000): f(n)
print((f(3220)-2*f(3215))/f(3210))
Если не может посчитать (ошибка слишком большой объем), замените деление / в последней строке на целочисленное - /
Ответ: 10333008
Номер: 5F1A93
20.10.2025
Алгоритм вычисления функций F(n) и G(n), где n – целое число, задан следующими соотношениями:
F(n) = 2 × (G(n – 3) + 8);
G(n) = 2 × n, если n < 10;
G(n) = G(n – 2) + 1, если n ≥ 10.
Чему равно значение выражения F(15548)?
Решение:
# Список для хранения значений G(n), индексы от 0 до 15551 (с запасом для G(n-3) при n=15548) g = [0] * 15552 # Заполняем G(n) для n < 10: G(n) = 2 * n for n in range(10): g[n] = 2 * n # Заполняем G(n) для n ≥ 10: G(n) = G(n-2) + 1 for n in range(10, 15552): g[n] = g[n - 2] + 1 # F(15548) = 2 × (G(15548 - 3) + 8) = 2 × (G(15545) + 8) print(2 * (g[15545] + 8))
ИЛИ
from functools import lru_cache
@lru_cache(None)
def g(n):
if n < 10:
return 2 * n
return g(n - 2) + 1
@lru_cache(None)
def f(n):
return 2 * (g(n - 3) + 8)
# Прогрев кэша
for n in range(16000):
g(n)
f(n)
print(f(15548))
Еще вариант:
def g(n): s = {} for i in range(n + 1): if i < 10: s[i] = 2 * i else: s[i] = s[i - 2] + 1 return s[n] def f(n): return 2 * (g(n - 3) + 8) print(f(15548))
Ответ: 15588
Номер: FDDA65
20.10.2025
Алгоритм вычисления функции F(n), где n – целое число, задан следующими соотношениями:
F(n) = n, если n < 10;
F(n) = n – 1 + F(n – 1), если n ≥ 10.
Чему равно значение выражения F(8567) – F(8563)?
Решение:
f = [0] * 8568
for n in range(0,10):
f[n] = n
for n in range(10, 8568):
f[n] = n - 1 + f[n - 1]
print(f[8567] - f[8563])
С объяснениями:
# Создаем список f, содержащий 8568 элементов, каждый из которых равен 0 f = [0] * 8568 # Цикл для начальных значений n от 0 до 9 (всего 10 чисел) for n in range(0, 10): # Присваиваем элементу с индексом n значение самого индекса n (f[0]=0, f[1]=1, ..., f[9]=9) f[n] = n # Цикл для вычисления остальных элементов списка, начиная с индекса 10 и до 8567 for n in range(10, 8568): # Вычисляем f[n] по рекуррентной формуле: (n - 1) + значение предыдущего элемента f[n-1] f[n] = n - 1 + f[n - 1] # Вычисляем и выводим разность между элементом с индексом 8567 и элементом с индексом 8563 print(f[8567] - f[8563])
Ответ: 34258
Номер: cD7BD4
20.10.2025
Алгоритм вычисления функции F(n), где n – целое число, задан следующими соотношениями:
F(n) = n, если n < 10;
F(n) = n2 + F(n – 9), если n ≥ 10.
Чему равно значение выражения F(5101) – F(5074)?
Решение:
n_max = 5101
f = [0] * (n_max + 1)
for n in range(0, 10):
f[n] = n
for n in range(10, n_max + 1):
f[n] = (n ** 2) + f[n - 9] #ПОМЕНЯЙ НА САЙТЕ!! ТУТ СТЕПЕНЬ N ВО 2-ОЙ А НЕ УМНОЖЕНИЕ
print(int((f[5101] - f[5074])))
Ответ: 77785554
Номер: F34029
20.10.2025
Алгоритм вычисления функций F(n) и G(n), где n – целое число, задан следующими соотношениями:
F(n) = 2 × G(n) + G(n – 1);
G(n) = n, если n ≤ 10;
G(n) = G(n – 2) + 1, если n > 10.
Чему равно значение выражения F(26728)?
Решение:
def g(n):
s = {}
for i in range(n + 1):
if i <= 10:
s[i] = i
else:
s[i] = s[i - 2] + 1
return s[n]
def f(n):
return 2 * g(n) + g(n-1)
print(f(26728))
Ответ: 40106
Номер: F97622
20.10.2025
Алгоритм вычисления функций F(n) и G(n), где n – целое число, задан следующими соотношениями:
F(n) = 3 × G(n – 3) + 7;
G(n) = n + 2, если n ≤ 20;
G(n) = G(n – 3) + 1, если n > 20.
Чему равно значение выражения F(37811)?
Решение:
...
Ответ:
Номер: 3eB0F2
20.05.2025
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n при n ≥ 2025;
F(n) = n × 2 + F(n + 2), если n < 2025.
Чему равно значение выражения F(82) – F(81)?
Решение:
...
Ответ: 1945
Номер: 1ADC01
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = (n – 1)× F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) − 3 × F(2023)) / F(2022)?
Решение:
...
Ответ: 4084440
Номер: A36CE9
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = (n – 1)× F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) + 2 × F(2023)) / F(2022)?
Решение:
...
Ответ: 4094550
Номер: 45985B
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = 2 n F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) + 2 F(2023)) / F(2022)?
Решение:
...
Ответ: 16386300
Номер: 3CB3DE
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = 2 n F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) − 3 F(2023)) / F(2022)?
Решение:
...
Ответ: 16366070
Номер: 1A2ED5
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n × F(n − 1), если n > 1.
Чему равно значение выражения (2 × F(2024) + F(2023)) / F(2022)?
Решение:
...
Ответ: 8191127
Номер: 97F321
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) − F(2023)) / F(2022)?
Решение:
...
Ответ: 4092529
Номер: D8CBBF
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) / 4 + F(2023)) / F(2022)?
Решение:
...
Ответ: 1025661
Номер: 0C9871
22.10.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = 2 n F(n − 1), если n > 1.
Чему равно значение выражения (F(2024) − F(2023)) / F(2022)?
Решение:
...
Ответ: 16374162
Номер: 39F802
16.04.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 3 при n = 1;
F(n) = n + 2 + F(n − 1), если n > 1.
Чему равно значение выражения F(2023) – F(2021)?
Решение:
...
Ответ: 4049
Номер: EFFD84
16.04.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n – 2 + F(n − 1), если n > 1.
Чему равно значение выражения F(2024) – F(2022)?
Решение:
...
Ответ: 4043
Номер: C0EC82
16.04.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n + F(n − 1), если n > 1.
Чему равно значение выражения F(2023) – F(2020)?
Решение:
...
Ответ: 6066
Номер: 7C657B
16.04.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 3 при n < 3;
F(n) = n + F(n − 2), если n ≥ 3.
Чему равно значение выражения F(2022) – F(2018)?
Решение:
...
Ответ: 4042
Номер: 0E2072
16.04.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 10 при n < 11;
F(n) = n + F(n − 1), если n ≥ 11.
Чему равно значение выражения F(2024) – F(2021)?
Решение:
...
Ответ: 6069
Номер: 5838F2
16.04.2024
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 6 при n < 7;
F(n) = n + F(n − 1), если n ≥ 7.
Чему равно значение выражения F(2023) – F(2021)?
Решение:
...
Ответ: 4045
Номер: DB8EF2
04.05.2023
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n при n >= 2025;
F(n) = n + 3 + F(n + 3), если n < 2025.
Чему равно значение выражения F(2018) – F(2022)?
Решение:
...
Ответ: 4049
Номер: 45D78C
04.05.2023
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n при n >= 2025;
F(n) = n + F(n + 2), если n < 2025.
Чему равно значение выражения F(2022) – F(2023)?
Решение:
...
Ответ: 2024
Номер: 2E8064
04.05.2023
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n при n >= 2025;
F(n) = n + 3 + F(n + 3), если n < 2025.
Чему равно значение выражения F(23) – F(21)?
Решение:
...
Ответ: 1338
Номер: 7C192E
28.03.2023
Алгоритм вычисления значения функции F(n), где n –
–
натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n + F(n − 1), если n чётно;
F(n) = 2 × F(n − 2), если n > 1 и при этом n нечётно.
Чему равно значение функции F(24)?
Решение:
...
Ответ: 2072
Номер: 4408DC
28.03.2023
Алгоритм вычисления значения функции F(n), где n –
–
натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = n + F(n − 1), если n чётно;
F(n) = 2 × F(n − 2), если n > 1 и при этом n нечётно.
Чему равно значение функции F(24)?
Решение:
...
Ответ: 2072
Номер: 789B96
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n < 3;
F(n) = F(n − 1) + n − 1, если n > 2 и при этом n чётно;
F(n) = F(n − 2) + 2 × n − 2, если n > 2 и при этом n нечётно.
Чему равно значение функции F(33)?
Решение:
...
Ответ: 545
Номер: 5F7DD8
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n < 3;
F(n) = F(n − 2) − F(n − 1), если n > 2 и при этом n чётно;
F(n) = 2 × F(n − 1) − F(n − 2), если n > 2 и при этом n нечётно.
Чему равно значение функции F(18)?
Решение:
...
Ответ: 169
Номер: 1644D5
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n < 3;
F(n) = F(n − 1) + n − 1, если n > 2 и при этом n чётно;
F(n) = F(n − 2) + 2 × n − 2, если n > 2 и при этом n нечётно.
Чему равно значение функции F(36)?
Решение:
...
Ответ: 648
Номер: D9A32B
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n < 3;
F(n) = F(n − 2) − F(n − 1), если n > 2 и при этом n чётно;
F(n) = 2 × F(n − 1) − F(n − 2), если n > 2 и при этом n нечётно.
Чему равно значение функции F(19)?
Решение:
...
Ответ: 577
Номер: 097227
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n < 3;
F(n) = F(n − 2) − F(n − 1), если n > 2 и при этом n чётно;
F(n) = 2 × F(n − 1) − F(n − 2), если n > 2 и при этом n нечётно.
Чему равно значение функции F(31)?
Решение:
...
Ответ: -
Номер: 4D7975
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n < 3;
F(n) = F(n − 2) − F(n − 1), если n > 2 и при этом n чётно;
F(n) = 2 × F(n − 1) − F(n − 2), если n > 2 и при этом n нечётно.
Чему равно значение функции F(15)?
Решение:
...
Ответ: 99
Номер: 859446
13.10.2022
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 2 при n < 3;
F(n) = F(n − 2) + F(n − 1) – n, если n > 2 и при этом n чётно;
F(n) = F(n − 1) − F(n − 2) + 2 × n, если n > 2 и при этом n нечётно.
Чему равно значение функции F(32)?
Решение:
...
Ответ: 3194
Номер: 3E7B68
06.03.2022
Алгоритм вычисления значения функции F(n), где n –– целое неотрицательное число, задан следующими соотношениями:
F(n) = 0 при n ≤ 1;
F(n) = (n + 1) / 2 + F(n − 1), если n > 1 и при этом n нечётно;
F(n) = 2 × F(n − 1) + 1, если n > 1 и при этом n чётно.
Чему равно значение функции F(33)?
Примечание. При вычислении значения F(n) используется операция целочисленного деления.
Решение:
...
Ответ: 262124
Номер: 7C0639
06.03.2022
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(n) = 0 при n ≤ 1;
F(n) = 2 × F(n − 1) + 2, если n > 1 и при этом n нечётно;
F(n) = n / 2 + F(n − 1), если n > 1 и при этом n чётно.
Чему равно значение функции F(30)?
Примечание. При вычислении значения F(n) используется операция целочисленного деления.
Решение:
...
Ответ: 98285
Номер: 2C19E5
06.03.2022
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(n) = 0 при n ≤ 1;
F(n) = 2 × F(n − 1) + 2, если n > 1 и при этом n нечётно;
F(n) = n / 2 + F(n − 1), если n > 1 и при этом n чётно.
Чему равно значение функции F(28)?
Примечание. При вычислении значения F(n) используется операция целочисленного деления.
Решение:
...
Ответ: 49134
Номер: 8C4B9D
06.03.2022
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(n) = 0 при n ≤ 1;
F(n) = 2 × F(n − 1) + 2, если n > 1 и при этом n нечётно;
F(n) = n / 2 + F(n − 1), если n > 1 и при этом n чётно.
Чему равно значение функции F(26)?
Примечание. При вычислении значения F(n) используется операция целочисленного деления.
Решение:
...
Ответ: 24559
Номер: FE70A9
06.03.2022
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(n) = 0 при n ≤ 1;
F(n) = 2 × n + F(n − 1), если n > 1 и при этом n нечётно;
F(n) = 2 × F(n − 1) , если n > 1 и при этом n чётно.
Чему равно значение функции F(22)?
Решение:
...
Ответ: 20380
Номер: FF255D
06.03.2022
Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями:
F(n) = 0 при n ≤ 1;
F(n) = 2 × n + F(n − 1), если n > 1 и при этом n нечётно;
F(n) = 2 × F(n − 1) , если n > 1 и при этом n чётно.
Чему равно значение функции F(24)?
Решение:
...
Ответ: 40852
Номер: 4254B4
08.08.2021
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n + 1 при n ≤ 2;
F(n) = F(n − 1) + 2 × F(n − 2) при n > 2.
Чему равно значение функции F(4)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 13
Номер: e1eF3A
08.08.2021
Алгоритм вычисления значения функции F(n), где n –
–
натуральное число, задан следующими соотношениями:
F(n) = n + 1 при n ≤ 2;
F(n) = F(n − 1) + 3 × F(n − 2) при n > 2.
Чему равно значение функции F(4)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 38
Номер: 50144e
08.08.2021
Алгоритм вычисления значения функции F(n), где n –
–
натуральное число, задан следующими соотношениями:
F(n) = 2 при n ≤ 2;
F(n) = F(n − 1) + 3 × F(n − 2) при n > 2.
Чему равно значение функции F(5)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 32
Номер: 2B8159
08.08.2021
Алгоритм вычисления значения функции F(n), где n –
–
натуральное число, задан следующими соотношениями:
F(n) = n при n ≤ 2;
F(n) = F(n − 1) + 2 × F(n − 2) при n > 2.
Чему равно значение функции F(6)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 59
Номер: 26e492
08.08.2021
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n при n ≤ 2;
F(n) = F(n − 1) + 3 × F(n − 2) при n > 2.
Чему равно значение функции F(6)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 43
Номер: 3DD732
08.08.2021
Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1 при n ≤ 2;
F(n) = F(n − 1) + 2 × F(n − 2) при n > 2.
Чему равно значение функции F(7)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 43
Номер: 584D84
08.08.2021
Алгоритм вычисления значения функции F(n), где n –– натуральное число, задан следующими соотношениями:
F(n) = 1 при n ≤ 2;
F(n) = F(n − 1) + 3 × F(n − 2) при n > 2.
Чему равно значение функции F(7)?
В ответе запишите только натуральное число.
Решение:
...
Ответ: 97
Номер: 0ce722