Приведём пример методики работы над алгоритмической задачей:
алг Закрашивание
дано | робот где-то на стене
надо | закрасить все прилегающие к стене клетки;
робот в исходном положении
A* |
|||||||||||||
Разработка алгоритма совместно с учениками
Вопросы, обобщение учителя |
Ожидаемые ответы |
Обстановка Учитель на доске изображает начальную обстановку |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Робот находится в одной из клеток прилегающих к стене сверху. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«нц пока снизу стена закрасить вправо»?
«Вниз; Влево»?
«нц пока сверху стена закрасить влево»?
«Вверх; Вправо»?
«Пока не клетка закрашена Закрасить вправо »
|
Идет до конца стены вправо, закрашивает, спускается вниз, идет до конца стены влево и закрашивает, поднимается вверх, идет до исходного положения и закрашивает. Идет до конца стены влево, закрашивает, спускается вниз, идет до конца стены вправо и закрашивает, поднимается вверх, идет до исходного положения и закрашивает. Пока снизу стена Закрасить вправо Пока снизу стена Закрасить влево Первый вариант, когда робот идёт вправо. Робот, закрасив клетки над стеной, окажется в клетке *А. Спуститься вниз, влево. Под стеной, в крайней правой клетке. Пока сверху стена закрасить влево Робот, закрасив клетки под стеной, окажется в клетке *А. Вверх Вправо Над стеной, в крайней левой клетке. Пока не клетка закрашена Закрасить вправо В исходной клетке. Да. |
Вариант 1 нц пока снизу стена закрасить вправо кц Вариант 2 нц пока снизу стена закрасить влево кц
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Итак, идея нашего алгоритма: - закрасить клетки вдоль стены сверху вправо - спуститься вниз, шаг влево - закрасить клетки вдоль стены снизу влево - подняться вверх, шаг вправо - закрасить клетки вдоль стены сверху вправо до исходной. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Модель частей алгоритма в форме блок-схемы
Давайте составим блок-схему для алгоритма закрашивания вдоль стены вправо (рис.1). Что мы делаем сначала?
Шагаем вправо.
Что идет дальше?
Цикл «пока»
Что пишется в ромбике?
Условие
Какое у нас условие?
Пока снизу стена
Если условие выполняется?
Закрашиваем клеточку, затем идем вправо
Если условие не выполняется?
Конец цикла
Рис.1. Блок-схема для алгоритма закрашивания вдоль стены вправо
Измените этот алгоритм, чтобы робот закрашивал клеточки вдоль стены слева.
Давайте составим блок-схему для алгоритма возвращения робота в исходное положение. Что мы делаем сначала?
Шагаем вправоо.
Что идет дальше?
Цикл «пока»
Что пишется в ромбике?
Условие
Какое у нас условие?
Пока не клетка закрашена
Если условие выполняется?
Идем вправо
Если условие не выполняется?
Конец цикла
Рис. 2. Блок-схема для алгоритма возвращения робота в исходное положение
Измените этот алгоритм, чтобы робот возвращался в исходное положение с другой стороны.
Итак, сколько всего будет циклов в нашей программе?
В каком порядке мы их расположим?
Напишите общий алгоритм решения задачи на языке КУМИР и проверьте его правильность на компьютере. Чего не хватает?
Запись алгоритма решения задачи на алгоритмическом языке
алг Закрашивание прилегающих к стене клеток
дано | робот где-то над стеной
надо | закрасить все прилегающие к стене клетки;
робот в исходном положении
нач
нц пока снизу стена
закрасить
вправо
кц
вниз
влево
нц пока сверху стена
закрасить
влево
кц
вверх
вправо
нц пока не клетка закрашена
закрасить
вправо
кц
кон
Проверка понимания алгоритма и правильности алгоритма
Как вы думаете, если робот будет стоять в другом месте стены, правильно ли будет выполняться алгоритм? Проверьте на компьютере.
Литература:
- Информатика. 7-9 кл.: Учебник для общеобразоват. учеб. заведений / А. Г. Кушниренко, Г. В. Лебедев, Я. Н. Зайдельман. — М.: Дрофа, 2001. — 336 с.
- Федеральный государственный образовательный стандарт основного общего образования (5-9 кл.). 17.12.2010, № 1897; URL: http://минобрнауки.рф/документы/938.