План урока на тему:

Запись вспомогательных алгоритмов на языке Python

Информатика9 класс64 раздела
Запись вспомогательных алгоритмов на языке Python

Информатика · 9 класс · Открытие нового · 45 мин

Запись вспомогательных алгоритмов на языке Python

Цели и задачи

  • Цель: сформировать представление о вспомогательных алгоритмах и научить создавать простейшие функции на языке Python для решения типовых задач.
  • Образовательная задача: изучить синтаксис описания подпрограмм (ключевое слово def, отступы, оператор return).
  • Развивающая задача: развить навыки декомпозиции сложной задачи на простые составляющие.
  • Воспитательная задача: способствовать преодолению страха перед программированием через использование бытовых аналогий.
  • Профориентационная задача: показать связь темы с заданиями ОГЭ по информатике (анализ кода).

Планируемые результаты

Личностные

  • Формирование ответственного отношения к обучению и готовности к саморазвитию.
  • Развитие критического мышления при анализе готового программного кода.
  • Повышение уверенности в своих силах при работе с цифровыми инструментами.

Метапредметные

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

Предметные

  • Знать определение подпрограммы, процедуры и функции.
  • Понимать различие между встроенными и пользовательскими функциями.
  • Уметь записывать простейшую функцию на Python с использованием параметров и возвращаемого значения.

Универсальные учебные действия (УУД)

Личностные УУД

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

Регулятивные УУД

  • Целеполагание как постановка учебной задачи.
  • Контроль в форме сличения способа действия и его результата с заданным эталоном.

Познавательные УУД

  • Синтез — составление целого из частей (сборка программы из функций).
  • Моделирование — преобразование объекта из чувственной формы в модель (алгоритм).

Коммуникативные УУД

  • Сотрудничество в поиске и сборе информации.
  • Умение с достаточной полнотой и точностью выражать свои мысли.

Подготовка учителя к уроку

  • Подготовить презентацию с ключевыми понятиями (def, return, процедура, функция).
  • Распечатать карточки-шпаргалки со структурой функции (1 на парту).
  • Подготовить файлы-заготовки для практической работы с комментариями "Допиши здесь".
  • Проверить работоспособность среды программирования Python (IDLE, Thonny или онлайн-компилятор) на всех ПК.
  • Подготовить демонстрационный пример программы с ошибкой в отступах для анализа.

Ход урока

Этап 1. Организационный момент / Мотивация (3 мин)

Цель этапа: настроить учащихся на работу, снять психологический барьер перед сложной темой.
Действие учителя
Действие учеников
"Здравствуйте, ребята! Сегодня мы станем архитекторами программ. Скажите, если бы вы строили дом, вы бы сами каждый кирпич обжигали или купили бы готовые?"
Отвечают: "Купили бы готовые, так быстрее".
"В программировании так же. Чтобы не писать один и тот же сложный код много раз, программисты создают 'кирпичики' — вспомогательные алгоритмы. Сегодня мы научимся их делать."
Слушают учителя, настраиваются на изучение новой темы.
Завершение этапа: учитель подводит итог: "Итак, наша задача сегодня — научиться создавать свои собственные команды для Python."

Этап 2. Актуализация знаний (4 мин)

Цель этапа: вспомнить базовые команды Python, которые уже знакомы ученикам.
Действие учителя
Действие учеников
"Давайте вспомним команды, которые мы уже знаем. Как вывести текст на экран? Как получить число от пользователя?"
Отвечают: "print() для вывода, input() для ввода".
"Верно. А знали ли вы, что print и input — это тоже вспомогательные алгоритмы, только встроенные в язык? Кто-то уже написал их за нас!"
Удивляются, осознают, что уже пользовались функциями.
Завершение этапа: учитель подводит итог: "Мы уже умеем пользоваться чужими 'кирпичиками', пришло время научиться делать свои."

Этап 3. Выявление места и причины затруднения (3 мин)

Цель этапа: показать неудобство написания повторяющегося кода.
Действие учителя
Действие учеников
"Представьте, что нам нужно в программе трижды спросить имя пользователя и поздороваться с ним. Мы будем три раза писать одни и те же строчки? А если их будет 100? В чем здесь проблема?"
Предполагают: "Будет очень длинный код", "Легко ошибиться", "Долго писать".
Завершение этапа: учитель подводит итог: "Проблема в избыточности. Нам нужно научить программу новой короткой команде, например, 'приветствие'."

Посмотрите план целиком

Зарегистрируйтесь — и откройте план урока по этой теме полностью: цели, ход урока и рефлексия по ФГОС.

Этап 4. Открытие нового знания (10 мин)

Цель этапа: объяснить структуру подпрограммы, используя визуальные опоры из презентации.
Действие учителя
Действие учеников
"Посмотрите на слайд 'Ключевые слова'. Для создания своего алгоритма используется слово def (от англ. define — определить). Пишем: def имя_функции():. Что обязательно должно стоять в конце этой строки?"
Смотрят на экран, отвечают: "Двоеточие".
"Правильно. А теперь самое важное: всё, что входит в нашу функцию, пишется с отступом в 4 пробела. Это как абзац в книге. Если отступа нет — Python не поймет, что это часть функции."
Записывают в тетрадь схему: def -> имя -> () -> : -> отступ.
"Бывают функции-процедуры (просто выполняют действие, как print) и функции, которые возвращают результат (как математическая функция). Для возврата используется слово return. Представьте, что вы дали роботу задание 'свари кофе'. Процедура — он сварил и стоит. Функция — он сварил и принес чашку вам (вернул результат)."
Слушают аналогию, фиксируют разницу между процедурой и функцией.

Запись в тетрадях

Структура функции в Python:
def имя(параметры):
    # действия (блок кода)
    return значение
Завершение этапа: учитель подводит итог: "Мы разобрали теорию. Теперь давайте посмотрим, как это выглядит в реальной программе."

Этап 5. Первичное закрепление (3 мин)

Цель этапа: разобрать готовый пример из презентации (Алгоритм Евклида) на логическом уровне.
Действие учителя
Действие учеников
"Посмотрите на слайд с алгоритмом Евклида. Не пугайтесь кода! Здесь функция nod(a, b) находит наибольший общий делитель. Видите слово return a? Что оно делает?"
Анализируют код на слайде, отвечают: "Оно отдает ответ назад в основную программу".
Завершение этапа: учитель подводит итог: "Отлично, вы видите структуру. Теперь самое интересное — практика за компьютерами."

Этап 6. Практическая работа (20 мин)

Цель этапа: научить применять полученные знания на практике через модификацию готового кода. Это критически важно для учеников с низким уровнем подготовки.
Действие учителя
Действие учеников
"Садимся за компьютеры. Откройте файл 'Задание 1'. Там написана функция greet(name). Ваша задача — изменить её так, чтобы она не просто здоровалась, а говорила: 'Привет, [имя], добро пожаловать на урок информатики!'"
Садятся за ПК, открывают среду программирования, редактируют строку внутри функции.
"Теперь переходим к 'Заданию 2'. Нам нужно создать функцию-калькулятор, которая складывает два числа. Я подготовил скелет программы, вам нужно дописать слово return и правильно указать, что мы возвращаем."
Работают с кодом. Дописывают: return a + b. Запускают программу, проверяют результат.
"Для тех, кто справился — бонусное задание на карточке. Попробуйте создать функцию, которая вычисляет площадь прямоугольника по двум сторонам."
Более сильные ученики пробуют написать функцию самостоятельно с нуля.

Карточка для учащихся: практическая работа

Задание 1. Измени функцию приветствия

В программе уже создана функция:

def greet(name): 

   print("Привет, " + name) 

Измени её так, чтобы программа выводила сообщение:

Привет, [имя], добро пожаловать на урок информатики! 

Например, при вызове:

greet("Анна") 

на экране должно появиться:

Привет, Анна, добро пожаловать на урок информатики! 

Задание 2. Создай функцию сложения

Допиши программу, которая складывает два числа с помощью функции add_numbers.

def add_numbers(a, b): # допиши тело функции

x = int(input("Введите первое число: ")) 

y = int(input("Введите второе число: "))

print(add_numbers(x, y)) 

Требования:

  • используй оператор return;
  • функция должна возвращать сумму чисел a и b;
  • проверь работу программы на нескольких примерах.

Ожидаемый результат для чисел 7 и 5:

text 12

Эталон решения 

(Задание 1)

def greet(name): 

    print("Привет, " + name + ", добро пожаловать на урок информатики!")

greet("Анна")

Результат выполнения:

text Привет, Анна, добро пожаловать на урок информатики!

(Задание 2)
def add_numbers(a, b):
    result = a + b
    return result

x = int(input())
y = int(input())
print(add_numbers(x, y))
Завершение этапа: учитель подводит итог: "Я прошел и посмотрел ваши работы — у большинства функции 'ожили' и начали выдавать результат!"
(Задание 3)

def rectangle_area(length, width): 

    return length * width

a = float(input("Введите длину прямоугольника: ")) 

b = float(input("Введите ширину прямоугольника: "))

print("Площадь прямоугольника:", rectangle_area(a, b))

Например, при вводе длины 5 и ширины 3 программа выведет:

Площадь прямоугольника: 15.0

Этап 7. Рефлексия и домашнее задание (2 мин)

Цель этапа: зафиксировать успех и наметить план на будущее.
Время
Действие учителя
Действие учеников
2 мин
"Ребята, сегодня мы сделали большой шаг. Программирование — это не магия, а сборка из понятных деталей. Что было самым сложным?"
Отвечают: "Отступы", "Понять, куда возвращается return".

Критерии оценивания практической работы

  • "5" — выполнены все 3 задания, функции работают корректно, соблюдены отступы.
  • "4" — выполнены 2 задания, допущены незначительные ошибки в синтаксисе, которые ученик исправил сам.
  • "3" — выполнено только 1 задание (модификация готового кода), ученику требовалась постоянная помощь учителя.

Рефлексия

Вопрос для ученика
Цель вопроса
Какое слово в Python говорит: 'Сейчас я создам свою команду'?
Проверка усвоения ключевого слова def.
Зачем нужны 4 пробела (отступ) в начале строки внутри функции?
Проверка понимания синтаксической структуры блока кода.
Оцените свою работу: я справился сам или мне нужна была помощь?
Самооценка и выявление уровня комфорта с материалом.

Завершающее слово учителя

"Сегодня вы научились создавать вспомогательные алгоритмы. Это основа серьезного программирования. Даже самые сложные нейросети и игры состоят из тысяч таких маленьких функций, которые мы сегодня учились писать. На следующем уроке мы разберем более сложные примеры, включая рекурсию, которую мы сегодня только мельком видели на слайдах. Не бойтесь кода, он ваш помощник!"

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

  • Любая тема, любой уровень
  • Структура по ФГОС
  • 100% уникальный план урока
  • Цели, ход урока, рефлексия
  • Экспорт в PDF и Word
  • Готово за 1 минуту

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

Чем удобны планы уроков Нейрум

  • Готовый план, не набросокЦели, ход урока, планируемые результаты, рефлексия — всё по структуре ФГОС, открыли и пошли вести.
  • План урока или техкартаОдин материал — два формата экспорта в PDF. Скачали то, что нужно завучу.
  • Свой план урока за минутуНе нашли нужный? ИИ-конструктор напишет план урока по вашей теме, классу и типу урока.

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

Как скачать план урока «Запись вспомогательных алгоритмов на языке Python»?

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

Соответствует ли план урока ФГОС?

Да, структура урока — цели, ход урока, планируемые результаты — построена по ФГОС для 9 класса (информатике).

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

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