Методическая разработка урока информатики на тему "Разработка алгоритмов для исполнителя Робот". 9-й класс

Разделы: Информатика

Класс: 9

Ключевые слова: программа, алгоритм, исполнитель Робот, информатика, ОГЭ


Планируемые образовательные результаты:

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

Решаемые учебные задачи:

  • познакомить учащихся с методом конструирования алгоритмов - методом пошаговой детализации;
  • рассмотреть пример разработки алгоритма методом пошаговой детализации для исполнителя Робот.

Опорные понятия:

  • алгоритм
  • исполнитель
  • система команд исполнителя

Новые понятия:

  • последовательное построение алгоритма

Средства ИКТ, используемые на уроке:

  • персональный компьютер (ПК) учителя, интерактивная доска, мультимедийный проектор;
  • ПК учащихся.

Электронное приложение к учебнику:

  • презентация «Конструирование алгоритмов».

Ход урока

I. Организационный момент

Приветствие обучающихся, проверка присутствующих, их готовности к уроку.

II. Актуализация знаний

Эвристическая беседа. Вопросы для обсуждения:

- Как часто в повседневной жизни нам приходится сталкиваться с алгоритмами?

- Кто (что) является исполнителями алгоритмов?

- Приведите примеры алгоритмов и их исполнителей.

III. Целеполагание, мотивация к учебной деятельности

- Рассмотрим утверждения, которые приведены в таблице  (приложение 1).

- Отметьте знаками «+» и «–» верные (неверные), на ваш взгляд утверждения. Если информация  вам незнакома, поставьте знак «?».

Утверждения:

  • Алгоритм можно разработать (составить, построить) только одним способом.
  • Чтобы составить алгоритм для конкретного исполнителя нужно знать систему команд исполнителя.
  • Алгоритмическая конструкция следование отображает естественный, последовательный порядок действий.
  • Линейные алгоритмы наиболее распространённые конструкции для решения логических задач.
  • Алгоритмическая конструкция ветвление предусматривает выбор одной из двух последовательности действий, в зависимости от результата проверки условия.
  • Алгоритмическая конструкция повторение (цикл) – это последовательность действий выполняемых многократно.
  • На практике используются только циклы с заданным числом повторений.
  • В школе мы редко сталкиваемся с алгоритмами.
  • Исполнитель Робот способен выполнять только линейные алгоритмы.
  • При решении сложных задач нет необходимости уточнять (детализировать) действия исполнителя.

- В ходе занятия мы будем решать задачи, которые помогут подтвердить или опровергнуть ваши ответы.

- В конце занятия мы повторно рассмотрим таблицу «Верные – неверные утверждения» и у каждого из вас будет возможность не только убедиться в правильности или неправильности своих суждений, но и исправить знак «?».

III. Открытие нового знания

- Вы уже знакомы с исполнителем Робот. Он действует на клетчатом поле (прямоугольная область, которая разделена на клетки). Между клетками могут быть установлены стены. Используя команды, мы можем Роботом управлять: перемещать его по полю, закрашивать клетки.

Система команд исполнителя Робот

Простые команды-приказы: вверх, вниз, влево, вправо, закрасить.

Логические команды – команды проверки условия: сверху свободно, снизу свободно, слева свободно, справа свободно.

Команда ветвления:

если <условие> то
     < последовательность команд>
все

Если в одном условии требуется использовать несколько команд, то применяют логические связки: И, ИЛИ, НЕ.

Например:

если (слева свободно) и (справа свободно) то
     вниз
     закрасить
все

Команда цикла:

нц пока <условие>
     < последовательность команд>
кц

- Рассмотрим подробно таблицу «Система команд исполнителя Робот» в учебнике (§ 2.3, п. 2.3.2, с. 77-78).

Последовательное построение алгоритма

  • Упрощение команд постановки задачи для исполнителя.
  • Задача разбивается на более простые части.
  • Решение каждой части задачи формулируется в отдельной команде.
  • Команды, выходящие за пределы возможностей исполнителя, представляют в виде более простых команд.

Разработка алгоритма методом последовательного уточнения для исполнителя Робот.

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

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

Конечное положение Робота значения не имеет.

Решение.

Составим план действий Робота в обобщенном виде.

Шаг 1. Перейти к левому (правому) краю стены.

Шаг 2. Вернуть Робота в крайнюю клетку, примыкающую к стене сверху.

Шаг 3. Закрасить все клетки, примыкающие к стене сверху.

Детализация плана действий Робота.

1. Перейти к левому краю стены:

нц пока снизу стена
     влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок1>

2. Вернуть Робота в крайнюю клетку, примыкающую к стене сверху.

     вправо

Положение Робота после выполнения этого алгоритма <Рисунок2>

3. Закрасить все клетки, примыкающие к стене сверху:

нц пока снизу стена
      закрасить
      вправо
кц

Положение Робота после выполнения этого алгоритма и программа для Робота <Рисунок3>

Программа для Робота

     использовать Робот
алг
нач

нц пока снизу стена
     влево
кц
     вправо
нц пока снизу стена
     закрасить
     вправо
кц
кон

Вывод. Метод последовательного построения алгоритма состоит из следующих действий:

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

IV. Закрепление нового материала

Практическая работа.

Задача № 1. На бесконечном поле имеется горизонтальная стена. Длина стены неизвестна. От правого конца стены вверх отходит вертикальная стена также неизвестной длины. Робот находится в углу между вертикальной и горизонтальной стеной. На рисунке указан один из возможных способов расположения стен и Робота.

Напишите алгоритм для Робота, закрашивающий все клетки, расположенные выше горизонтальной стены и левее вертикальной стены и прилегающие к ним. Робот должен закрасить только клетки, удовлетворяющие заданному условию. Например, для приведенного рисунка Робот должен закрасить следующие клетки.

Конечное расположение Робота может быть произвольным. При исполнении алгоритма Робот не должен разрушиться.

Детализация плана действий Робота.

1. Закрасить все клетки, расположенные выше горизонтальной стены и прилегающие к ней:

нц пока снизу стена
    закрасить
    влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок4>

2. Вернуть Робота в исходное положение:

нц пока справа свободно
    вправо
кц

Положение Робота после выполнения этого алгоритма <Рисунок5>

3. Закрасить все клетки, расположенные левее вертикальной стены и прилегающие к ней:

нц пока справа стена
     закрасить
     вверх
кц

Положение Робота после выполнения этого алгоритма и программа для Робота <Рисунок6>

Программа для Робота (Приложение 2)

Задача № 2. Робот находится в верхней клетке узкого горизонтального коридора. Ширина коридора – одна клетка, длина коридора может быть произвольной.

Напишите для Робота алгоритм, закрашивающий все клетки внутри коридора и возвращающий Робота в исходную позицию. При исполнении алгоритма Робот не должен разрушиться.

Детализация плана действий Робота.

1. Закрасить клетку, в которой он находится (исходное положение):

закрасить

2. Закрасить все клетки внутри коридора:

нц пока справа свободно
      вправо
      закрасить
кц

Положение Робота после выполнения этого алгоритма <Рисунок7>

3. Вернуть Робота в исходное положение:

нц пока слева свободно
      влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок8>

Программа для Робота (Приложение3)

Задача № 3. На бесконечном поле имеется лестница. Сначала лестница слева направо спускается вниз, затем поднимается вверх. Высота каждой ступени – одна клетка, ширина – две клетки. Робот находится на первой ступеньке лестницы, в левой клетке. Количество ступеней, ведущих вниз, и количество ступеней, ведущих вверх, неизвестно.

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

Конечное расположение Робота может быть произвольным. При исполнении алгоритма Робот не должен разрушиться.

Детализация плана действий Робота.

1. Закрасить верхнюю ступеньку:

закрасить
вправо
закрасить

Положение Робота после выполнения этого алгоритма <Рисунок9>

2. Спускаться вниз (на ступеньку) и закрашивать все клетки, расположенные непосредственно над ступенями лестницы:

нц пока справа свободно
  вправо
  вниз
  закрасить
  вправо
  закрасить
кц

Положение Робота после выполнения этого алгоритма <Рисунок10>

3. Подняться вверх (на ступеньку) и закрасить все клетки, расположенные непосредственно над ступенями лестницы:

нц пока не справа свободно
      вверх
      вправо
      закрасить
      вправо
      закрасить
кц

Положение Робота после выполнения этого алгоритма <Рисунок11>

Программа для Робота (Приложение 4)

Задача № 4. На бесконечном поле есть горизонтальная и вертикальная стены. Левый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В каждой стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной непосредственно над горизонтальной стеной у её правого конца. На рисунке указан один из возможных способов расположения стен и Робота.

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

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

Детализация плана действий Робота.

1. Закрасить все клетки слева до прохода в горизонтальной стене:

нц пока снизу стена
      закрасить
      влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок12>

2. Перейти через проход до горизонтальной стены:

нц пока снизу свободно
      влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок13>

3.Двигаться влево до вертикальной стены и закрашивать все клетки, расположенные непосредственно выше горизонтальной стены:

нц пока слева свободно
      закрасить
      влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок14>

4. Закрасить все клетки справа от вертикальной стены до прохода:

нц пока слева стена
      закрасить
      влево
кц

Положение Робота после выполнения этого алгоритма <Рисунок15>

5. Перейти через проход до вертикальной стены:

нц пока слева свободно
      вверх
кц

Положение Робота после выполнения этого алгоритма <Рисунок16>

6. Закрасить все клетки справа от вертикальной стены:

нц пока слева стена
      закрасить
      вверх
кц

Положение Робота после выполнения этого алгоритма <Рисунок17>

Программа для Робота (Приложение 5)

Задача № 5. На бесконечном поле имеются две вертикальные стены и одна горизонтальная, соединяющая нижний конец левой и верхний конец правой вертикальных стен. Длины стен неизвестны. Робот находится в клетке, расположенной справа от верхнего края левой вертикальной стены, рядом со стеной. На рисунке указан один из возможных способов расположения стен и Робота.

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

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

Детализация плана действий Робота.

1. Обойти стену:

вверх
влево
вниз

Положение Робота после выполнения этого алгоритма <Рисунок18>

2. Закрасить все клетки слева от вертикальной стены:

нц пока справа стена
      закрасить
      вниз
кц

Положение Робота после выполнения этого алгоритма <Рисунок19>

3. Двигаться вправо до конца горизонтальной стены:

нц пока справа свободно
         вправо
кц

Положение Робота после выполнения этого алгоритма <Рисунок20>

4. Закрасить все клетки слева от вертикальной стены:

нц пока справа стена
      закрасить
      вниз
кц

Положение Робота после выполнения этого алгоритма <Рисунок21>

Программа для Робота (Приложение 6)

V. Рефлексия учебной деятельности

- Рассмотрим таблицу «Верные – неверные утверждения», которую вы заполняли в начале занятия.

- Какие изменения вы хотели бы внести? Ответ обоснуйте.

Продолжи одно или несколько предложений:

  • Сегодня на уроке я узнал(а) …
  • Я научился …
  • Я могу самостоятельно …
  • Затруднения вызвало …
  • Мне нужно повторить …
  • Я оцениваю свою работу на уроке …
  • Мое настроение в конце урока …

VI. Домашнее задание

  • Учебник - § 2.3, п. 2.3.1 – 2.3.2; стр. 87-88, вопросы № 2-4 (устно), № 6 (письменно)
  • Рабочая тетрадь - № 86 (б)

Список литературы

  1. Босова Л.Л., Босова А.Ю. Информатика. Учебник. 9 класс.- Москва: БИНОМ. Лаборатория знаний, 2018.
  2. Босова Л.Л., Босова А.Ю. Информатика. Рабочая тетрадь. 9 класс.- Москва: БИНОМ. Лаборатория знаний, 2017.
  3. Босова Л.Л., Босова А.Ю. Информатика. Методическое пособие. 7-9 класс.- Москва: БИНОМ. Лаборатория знаний, 2016.
  4. Путимцева Ю.С. Информатика и ИКТ. Подготовка к ОГЭ в 2019 году. Диагностические работы. - М.: МЦНМО, 2019.
  5. Поляков К.Ю. Преподавание, наука и жизнь // ОГЭ (9 класс) //Задания КИМ № 20 [Электронный ресурс]. Режим доступа: http://kpolyakov.spb.ru/school/oge/gen.php?action=viewAllEgeNo&egeId=120&cat115=on, свободный.