Обучение алгоритмизации.
Первыми заданиями по управлению исполнителем должны быть задачи на работу в режиме прямого управления с целью получить определенный рисунок (слово, в зависимости от выбора исполнителя). Продемонстрируйте ученикам реакцию исполнителя при выполнении команды не входящей в «ски». Исполнитель дает сообщение о невозможности выполнить команду. Обучение программированию для исполнителя нужно строить на последовательности решаемых задач. Очередность задач должна определяться следующими принципами:
- от простого к сложному: постепенное усложнение задач;
- новизна: каждая задача вносит какой-то новый элемент знаний (новая команда, новый прием программирования);
- наследование: следующая задача требует использования знаний, полученных при решении предыдущих задач.
Рассматривается последовательность задач, которая позволяет ученикам осваивать приемы алгоритмизации в таком порядке:
- составление линейных алгоритмов;
- описание и использование вспомогательных алгоритмов;
- составление циклических алгоритмов;
- использование ветвлений в алгоритмах;
- использование метода последовательной детализации при составлении сложных алгоритмов.
Задача 1.(напримере использования исполнителя «черепашка»): составить алгоритм рисования буквы «Т» в центре поля рисунка. Длина горизонтального и вертикального отрезков - 40.
Задача2. (на примере использования исполнителя «черепашка») естественным образом выводит на идею вспомогательного алгоритма. Задание следующее: составить алгоритм рисования числа «1919». Учитель может поступить следующим образом: предложить ученикам написать алгоритм прежними средствами (с использованием примитивов). Такое задание, очевидно, не вызовет энтузиазма учеников, поскольку принцип им уже понятен, а писать длинный линейный алгоритм довольно скучно. В этой ситуации вполне возможно самостоятельное «открытие» учениками идеи вспомогательного алгоритма. Обратив внимание на то, что в рисунке дважды присутствуют цифры «1» и «9», ученики могут прийти к идее отдельного описания алгоритмов рисования этих цифр, а затем использования их для получения четырехзначного числа «1919». После обсуждения этой идеи учитель вводит понятие вспомогательного алгоритма и объясняет, как производится его описание и использование.
Умение использовать вспомогательные алгоритмы необходимо вырабатывать у учеников как можно раньше, уже на примерах линейных алгоритмов. Важнейший прием алгоритмизации и программирования - декомпозиция задачи, т. е. выделение в исходной задаче некоторых более простых подзадач. Алгоритмы решения таких подзадач называются вспомогательными алгоритмами, а реализующие их программы - подпрограммами (процедурами). Таким образом, решение исходной задачи разбивается на несколько алгоритмов: основной алгоритм и вспомогательные алгоритмы. В основном алгоритме происходит многократное обращение к вспомогательному алгоритму.
Задача 3:построить прямоугольную рамку по краю поля. Решение этой задачи требует объединения умений, полученных учениками при решении предыдущих задач. Циклическая программа рисования линии оформляется в виде процедуры ЛИНИЯ. А в основной программе происходит четырехкратное обращение к этой процедуре.
Задача 4:расчертить экран горизонтальными линиями. Эта задача является прямым продолжением предыдущей задачи. Усложнение заключается в том, что используются две процедуры: ЛИНИЯ и ВОЗВРАТ. Кроме того, основной алгоритм сам становится циклическим. Здесь снова нужно отметить то важное обстоятельство, что при использовании процедур в основной программе необходимо учитывать начальное и конечное состояние исполнителя при их выполнении.
Задача 5:нарисовать орнамент, состоящий из квадратов, расположенных по краю поля. Здесь вводится еще одна структурная команда - ветвление. На примере этой задачи еще раз демонстрируется методика последовательной детализации. Причем, в отличие от предыдущих программ, здесь используется два шага детализации, поскольку в процедуре РЯД содержится обращение к процедуре следующего уровня - КВАДРАТ.
Разобравшись в рассмотренных задачах, выполнив самостоятельные задания аналогичного типа, ученики должны усвоить два основных принципа структурной методики алгоритмизации (структурного программирования):
- всякий алгоритм может быть построен с использование трех типов управляющих структур: следование, ветвление, цикл;
- при построении сложных алгоритмов следует применять метод последовательной детализации.
Дата добавления: 2016-07-18; просмотров: 2930;