Повторение. Цикл с параметром
§ 13 учебника Котова и Лапо (2025): тело цикла, параметр, итерация, for и range(). Считаем повторы и проверяем путь Робота на авторских схемах.
Сначала — короткое объяснение
Цикл с параметром: пять повторов — где финиш?
Тело, параметр и итерация цикла for. Пошагово проверяем Робота, исключённую границу range, отступы и помощник внутри цикла. Сравниваем рисунок и место остановки. Самопроверка с паузой 12 секунд. Авторская учебная анимация; 7 минут 46 секунд. К § 13 учебника для 7 класса РБ, урок 15.
Конспект урока
Если Роботу предстоит повторить действие четыре раза, можно написать четыре одинаковые группы команд. Но что случится, если понадобится изменить число повторов? Цикл с параметром позволяет задать его в заголовке и один раз записать повторяющиеся команды.
Иллюстрации помогают представить идею. Точные значения счётчика, команды, клетки и результаты ниже набраны текстом и таблицами.
Что изучаем
Это тема § 13 «Алгоритмическая конструкция повторение», печатные с. 91–98 учебника В. М. Котова и А. И. Лапо (2025). Предыдущий урок научил вызывать вспомогательный алгоритм; теперь разберём, как выполнить одно и то же тело заранее известное число раз. За урок ты сможешь назвать значения параметра цикла, посчитать итерации, предсказать результат программы Робота и исправить ошибку на один повтор.
Цикл, тело и итерация
Алгоритмическая конструкция повторение (цикл) задаёт многократное выполнение последовательности действий. Эти действия называют телом цикла. Цикл с параметром (со счётчиком, цикл «для») применяют, когда число повторов известно заранее. Параметр цикла принимает очередное значение при каждом повторе; одно выполнение тела называется итерацией.
В примере 13.1 учебника повторяется пара действий при приготовлении десяти пельменей. Сначала кипятят воду, затем десять раз выполняют тело, а после него варят блюдо. Действия до и после цикла не входят в его тело. На бумаге выдели их разным цветом, а тело обведи рамкой.
Заголовок цикла в Python
for i in range(4): — заголовок цикла. Ключевые слова for, in и имя функции range помогают прочитать его: параметр i последовательно принимает значения 0, 1, 2, 3. Следующие строки с отступом образуют тело. Число 4 не становится значением i: правая граница диапазона Python не входит в него.
for i in range(4):
fill_cell()
move_right()
Тело содержит две команды, и каждая выполняется четыре раза. Внутри цикла движение выполняется и в последний раз — это важно для конечного положения Робота.
| Запись | Значения параметра | Итераций |
|---|---|---|
range(4) | 0, 1, 2, 3 | 4 |
range(2, 7) | 2, 3, 4, 5, 6 | 5 |
range(1, 8, 2) | 1, 3, 5, 7 | 4 |
range(4, 0, -1) | 4, 3, 2, 1 | 4 |
range(0) | нет значений | 0 |
Записи range(N), range(N1, N2) и range(N1, N2, h) отвечают на вопрос 7 после § 13. Шаг h может быть положительным или отрицательным целым числом, но не нулём. При положительном шаге последняя возможная величина меньше правой границы; при отрицательном — больше её. Если подходящих значений нет, тело не выполнится ни разу. Простое правило N2 − N1 для числа итераций действует только при шаге 1 и подходящих границах.
Проследим Робота без компьютера
Пусть открытое поле имеет 1 строку × 7 столбцов, внутренних стен нет. Старт в клетке (1, 1). Координаты далее записываем как (строка, столбец). Исполним:
for i in range(3):
fill_cell()
move_right()
| i | Клетка до тела | Новая закраска | Клетка после движения |
|---|---|---|---|
| 0 | (1, 1) | (1, 1) | (1, 2) |
| 1 | (1, 2) | (1, 2) | (1, 3) |
| 2 | (1, 3) | (1, 3) | (1, 4) |
Итак, закрашены три клетки (1, 1)–(1, 3), а Робот остановился в (1, 4). Клетка финиша не обязательно закрашена. Если из цикла убрать последнее движение и выполнить его после цикла, результат изменится — сначала предскажи как, потом проверь по командам.
В примере 13.7 учебника тело цикла может содержать вызов вспомогательного алгоритма. Это продолжение темы прошлого урока: один помощник вызывается многократно. Сейчас мы разбираем один цикл с таким вызовом; вложенные циклы относятся к следующему материалу и здесь не требуются.
Самостоятельная работа
Возьми отдельный рабочий лист. Сначала вычисли значения range(2, 8, 2) и range(5, 1, -2). Затем на новом открытом поле 1 × 6, старт (1, 1), проследи четыре итерации fill_cell(); move_right(): запиши закраску и конечное положение после каждой. Наконец, отремонтируй программу так, чтобы на другом поле 1 × 6 были закрашены клетки 1–4 и Робот закончил в клетке 4. Сам реши, что останется внутри цикла, а что будет выполнено после него. Не смотри ключ до своей попытки.
Карточка помощи напоминает правило правой границы и предлагает иной короткий пример. Дополнительная практика тренирует отрицательный шаг и помощь Роботу. Отдельный выходной билет показывает твой личный результат; ответы учитель собирает до раскрытия ключа.
Вопросы и упражнения учебника
После § 13 на с. 96 даны семь вопросов. Проверь себя: 1) назови повторяющийся процесс; 2) объясни, что такое алгоритмическая конструкция повторение; 3) выдели тело; 4) скажи, когда подходит цикл с параметром; 5) назови ключевые слова заголовка for i in range(...): это for и in (range — имя функции, i — параметр); 6) объясни итерацию; 7) сравни три формы range. Наши задания на значения, число повторов и Робота готовят к этим вопросам.
Упражнения § 13 на с. 97–99 предлагают, среди прочего, описать циклические алгоритмы словами или блок-схемой, проследить удвоение количества бактерий за 10 минут и исправить алгоритм окраски забора. В последнем важно заметить: повторная окраска без перехода к следующей доске не решает задачу. Выбирая упражнение из учебника, работай по его напечатанному условию; схемы и поля здесь авторские.
Проверь себя перед сдачей
- Выпиши значения параметра, не включая конечную границу
range. - Отметь, сколько раз исполняется каждая команда с отступом.
- После последнего повтора проверь клетку Робота отдельно от закрашенных клеток.
- Убедись, что движение не выходит за край и не пересекает стену.
Домашняя карточка: прочитай § 13, ответь на вопросы 3, 5–7 на с. 96, реши авторскую задачу на счётчик и придумай собственное короткое тело для Робота. Компьютер и pyrob для обязательной части не нужны.
10 вопросов по теме «Повторение. Цикл с параметром». Выбери ответ, прочитай объяснение и попробуй ещё раз, если ошибся.
Открыть отдельноВопрос 1 из 10
ТренировкаБез отметки и ограничения времени. Первый ответ учитывается отдельно от исправлений. При обновлении страницы ответы сбросятся.
Скачать и открыть
Материалы урока
10 материаловПодготовка к уроку
3 материала· для учителей
25 слайдов по § 13: тело, параметр, итерация, for/range и трасса Робота после каждого повтора.
Презентация · MediaSchool
45 минут: прогноз, значения range(), трасса Робота, личный билет, ключи и вариант без принтера.
Методичка · MediaSchool
Значения диапазонов, трассы, билет, дополнительная практика и действия после ошибок.
Методичка · MediaSchool
Рабочие листы и практика
5 материалов· для учеников
W1–W3: значения range(), четыре итерации на поле 1×6 и ремонт финиша без лишнего движения.
Рабочий лист · MediaSchool
Иные числа и малое поле: подсказка без готового ответа рабочего листа.
Рабочий лист · MediaSchool
Отрицательный шаг, вызов помощника в цикле и стена на пути Робота.
Рабочий лист · MediaSchool
Б1–Б3: значения параметра, число исполнений команд и последний шаг Робота.
Рабочий лист · MediaSchool
Вопросы § 13, свой диапазон с шагом и короткий цикл для Робота.
Рабочий лист · MediaSchool
Проверка знаний
1 материал· для учеников
10 вопросов с объяснениями и повторной попыткой.
Проверочная
Дополнительные материалы
1 материал· для учеников
Необязательный цикл for для локального pyrob после бумажного прогноза.
Другое · MediaSchool
От сообщества
Материалы сообщества0
Дополнения от учителей к этому уроку. Проверены модерацией, но не являются редакционным контентом MediaSchool.
Поделитесь первым материалом
Рабочий лист, презентация или методичка помогут другим учителям подготовиться к уроку.
Комментарии
Войдите, чтобы оставлять комментарии.
Пока нет комментариев. Будьте первым!