Каталог тестов · Программирование: Python и C++

Функции и рекурсия в Python: return, логические функции, базовый случай, фракталы, проектирование сверху вниз — тест для 8 класса

Предмет: Информатика Класс: 8 Вопросов: 15 Баллов: 43 Время: 25 мин Уч. год: 2025-2026 Предпроф / ИТ-вертикаль / Программирование на Python и C++
Бесплатно для подключённых школ

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

Что проверяется

Этапы создания программы и методы проектирования «сверху вниз» и «снизу вверх». Интерфейс и реализация функции, документирующая строка. Различие процедуры и функции, оператор return и значение None. Логические функции, возвращающие True или False. Рекурсивные функции: базовый случай, приближение к нему, глубина рекурсии и RecursionError. Порядок вызовов и возвратов. Числа Фибоначчи, сумма цифр, рекурсивные фракталы — дерево и снежинка Коха.

Задания

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

Разбор

В пояснениях разобрано, почему функция без return возвращает None, почему print внутри функции не заменяет return, в каком порядке печатает числа функция, у которой вывод стоит после рекурсивного вызова, и как растёт число элементов фрактала с каждым уровнем.

Назначение

Работа рассчитана на первые восемь часов 8 класса. Рекурсия понадобится дальше в рекурсивном переборе строк, быстрой сортировке и обходе деревьев в 9 классе, поэтому трудности с базовым случаем лучше заметить сейчас. В восьмом классе курс «Программирование» ведётся на двух языках: первое полугодие продолжает Python, второе вводит C++, на котором пишут олимпиадные решения и программы для микроконтроллеров. Темы повторяются на обоих языках намеренно — так ученик видит, что алгоритм не зависит от синтаксиса. Эта работа — первая из 6 по курсу.

Технические возможности

Работа доступна и на компьютере, и на мобильном телефоне: интерфейс сам подстраивается под размер экрана. Учитель может задать период, в течение которого доступен тест, поэтому его допустимо выполнять и дома. Для защиты от подсказок отслеживается, покидал ли ученик вкладку с тестом ради других вкладок или приложений.

Готовитесь к этой работе?

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

Шпаргалка: Python: функции, рекурсия и фракталы — курс «Программирование: Python и C++», 8 класс →

Примеры заданий

Вопрос 1 · 2 балл(ов)

Что выведет программа?

def is_even(n):
    return n % 2 == 0

print(is_even(7))
Вопрос 2 · 2 балл(ов)

Какое число выведет программа?

def f(n):
    if n <= 1:
        return 1
    return n * f(n - 1)

print(f(5))

Купить для ребёнка — 190 ₽

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

Купить для ребёнка — 190 ₽ Что такое кабинет родителя

Кабинет учителя — 390 ₽

Для учителей и репетиторов, работающих с учениками вне школы. Разовая оплата, доступ навсегда — без подписки. Проведение с любого устройства: участники заходят по ссылке или QR-коду, регистрация не нужна. Результат и разбор ошибок — сразу после работы.

Купить тест — 390 ₽ Оферта и реквизиты

Для всей школы — подключить организацию по лицензии →

Заберите этот тест в свою школу

Чтобы добавить тест в базу и провести диагностику — подключите школу к ЗнаниоМетр. Тест станет вашей редактируемой копией: правьте вопросы, баллы и запускайте сессии.

Подключить школу
Посмотреть в демо