Рабочий лист на тему:

Рекурсия

Информатика10 класс10 заданий
Множественный выборИстина / ЛожьЗаполни пропускиКраткий ответСоединениеРеши задачуНайти лишнее

Типы заданий

Множественный выборИстина / ЛожьЗаполни пропускиКраткий ответСоединениеРеши задачуНайти лишнее
Рекурсия

10 класс · дифференцированный

Ф.И.
Класс


Разберёмся, как функция вызывает саму себя, и научимся прослеживать рекурсивные алгоритмы от простых случаев до нестандартных решений.

№1 · ОСНОВА РЕКУРСИИ

1 ВОПРОС · 1 БАЛЛ

1. Условие остановки

Выберите верное утверждение о базовом случае рекурсивной функции.

  • Базовый случай обязательно вызывает функцию ещё один раз.
  • Базовый случай останавливает дальнейшие рекурсивные вызовы.
  • Без базового случая рекурсия всегда завершается после одного вызова.
  • Базовый случай нужен только для вывода промежуточных значений.

№2 · ВЫЗОВЫ ФУНКЦИИ

1 ВОПРОС · 1 БАЛЛ

2. Самовызов функции

Что происходит при выполнении рекурсивного вызова внутри функции?

  1. Функция запускает новый вызов самой себя с некоторыми аргументами.
  2. Рекурсивный вызов всегда означает бесконечный цикл.
  3. После рекурсивного вызова выполнение текущего вызова может продолжиться.
  4. Рекурсивная функция не может содержать условный оператор.

№3 · СТРУКТУРА ФУНКЦИИ

2 ПРОПУСКА · 1 БАЛЛ

3. Два обязательных элемента

Заполните пропуски в описании рекурсивной функции.

Рекурсивная функция должна содержать условие остановки и вызов функции с изменёнными .

№4 · ТРАССИРОВКА

1 КРАТКИЙ ОТВЕТ · 2 БАЛЛА

4. Количество вызовов

Рассмотрите код:

```python
def f(n):
 if n == 0:
 return
 print(n)
 f(n - 1)
```

Сколько чисел напечатает вызов `f(3)`? Запишите только число.

№5 · СОПОСТАВЛЕНИЕ

4 ПАРЫ · 2 БАЛЛА

5. Рекурсивные задачи и их базовые случаи

Соедините каждую задачу с подходящим базовым случаем рекурсии. Каждый вариант справа используется один раз.

№6 · РЕКУРСИВНЫЕ ВЫЧИСЛЕНИЯ

1 ЗАДАЧА · 2 БАЛЛА

6. Факториал через рекурсию

Дана функция:

```python
def fact(n):
 if n == 0:
 return 1
 return n * fact(n - 1)
```

Вычислите значение выражения `fact(4)`. Запишите решение по шагам и итоговый ответ.

+5 заданий в этом листе

Зарегистрируйтесь — и соберите свой рабочий лист по этой теме за минуту: заданий столько, сколько нужно.

№7 · НАЙДИ ЛИШНЕЕ

4 ЭЛЕМЕНТА · 3 БАЛЛА

7. Корректные рекурсивные уменьшения

Найдите лишний фрагмент. Три фрагмента уменьшают задачу и могут привести к базовому случаю, а один фрагмент не гарантирует завершение рекурсии. Критерий для проверки дан только учителю.

  1. return f(n - 1)
  2. return f(n // 2)
  3. return f(n - 2)
  4. return f(n + 1)

№8 · ПОРЯДОК ВЫВОДА

4 УТВЕРЖДЕНИЯ · 2 БАЛЛА

8. Вывод до и после вызова

Определите истинность утверждений по коду:

```python
def f(n):
 if n == 0:
 return
 print("до", n)
 f(n - 1)
 print("после", n)
```

Рассуждайте о порядке выполнения команд.

  1. При вызове f(2) сначала выполняется print("до", 2).
  2. Строка print("после", 2) выполняется раньше, чем print("до", 1).
  3. После достижения базового случая начинают выполняться команды после рекурсивного вызова.
  4. При вызове f(2) строка print("после", 1) выполняется после print("после", 2).

№9 · РЕКУРСИЯ ПО СТРОКЕ

2 ПРОПУСКА · 3 БАЛЛА

9. Проверка палиндрома

Заполните пропуски в рекурсивной функции, которая проверяет, читается ли строка одинаково слева направо и справа налево.

def is_palindrome(s):
    if len(s) <= 1:
        return True
    if s[0] != s[-1]:
        return False
    return is_palindrome(s[
:-])

№10 · РЕКУРСИВНЫЙ АЛГОРИТМ

1 ЗАДАЧА · 3 БАЛЛА

10. Двоичный поиск рекурсией

В отсортированном списке `a = [2, 5, 8, 12, 16, 21, 25]` рекурсивная функция двоичного поиска получает границы `left = 0`, `right = 6` и ищет число `16`.

На каждом шаге она вычисляет `mid = (left + right) // 2`. Если `a[mid]` меньше искомого числа, поиск продолжается справа; если больше — слева; если равен — функция возвращает индекс.

Запишите последовательность значений `mid`, проверенных до нахождения числа `16`, и итоговый индекс.

Создайте уникальный лист по своей теме

  • Любая тема, любой уровень
  • 20+ типов заданий
  • 100% уникальный контент
  • Со страницей ответов
  • Защита от списывания
  • Готово за 1 минуту

Другие темы по информатике для 10 класса

Чем удобны рабочие листы Нейрум

  • По действующей программеТемы и задания совпадают со школьной программой 1–11 классов. Открыли — дали классу, без правок.
  • Готово к печати, с ответамиPDF в формате A4 и ключ ответов на отдельной странице. Скачали, распечатали, раздали — без правок в Word.
  • Свой лист за минутуНе нашли нужный? ИИ-конструктор соберёт лист по вашей теме, классу и типам заданий.

Вопросы и ответы

Как скачать рабочий лист «Рекурсия в Python»?

Зарегистрируйтесь бесплатно — лист сохранится в личном кабинете, откуда его можно скачать в PDF и распечатать.

Сколько заданий в листе и какие они?

В листе 10 заданий: множественный выбор, истина / Ложь, заполни пропуски, краткий ответ, соединение, реши задачу, найти лишнее.

Соответствует ли лист ФГОС?

Да, задания ориентированы на школьную программу по информатике для 10 класса по ФГОС.

Можно ли изменить задания под свой класс?

Да. После регистрации лист открывается в конструкторе: задания можно заменить, перегенерировать или добавить новые.