- •Глава 1. Методические особенности изучения алгоритмизации
- •§1. Подходы к изучению алгоритмизации
- •§2.Методика введения понятия алгоритма
- •§3. Методика обучения алгоритмизации на учебных исполнителях, работающих «в обстановке»
- •§4. Методические проблемы изучения алгоритмов работы с величинами
- •Глава 2. Разработка заданий по теме: «Алгоритмизация»
- •§1. Задания, выполнение которых осуществляется в КуМире.
- •Пользуясь процедурой рисования треугольника из первого задания, необходимо нарисовать «бантик».
- •§4. Конспект урока по теме: ««Управление исполнителем Робот»
- •2. Фронтальный опрос теории
- •4.Закрепление изученного материала.
- •5.Практическое задание:
§3. Методика обучения алгоритмизации на учебных исполнителях, работающих «в обстановке»
Обучение методам построения алгоритмов - один из наиболее отработанных разделов школьной информатики. Традиционно применяемым дидактическим средством в этом разделе являются учебные исполнители алгоритмов, которые удовлетворяют следующим условиям:
это должен быть исполнитель, работающий «в обстановке»;
этот исполнитель должен имитировать процесс управления некоторым реальным объектом (Черепахой, Роботом и др.);
в системе команд исполнителя должны быть все структурные команды управления (ветвления, циклы);
исполнитель позволяет использовать вспомогательные алгоритмы (процедуры).
Последние два пункта означают, что на данном исполнителе можно обучать структурной методике алгоритмизации. Всякое педагогическое средство должно соответствовать поставленной учебной цели. Главной целью раздела алгоритмизации является овладение учащимися структурной методикой построения алгоритмов.
Обучение алгоритмизации. Обучение алгоритмизации (программированию) для исполнителя нужно строить на последовательности решаемых задач. Эта последовательность должна определяться следующими принципами:
от простого к сложному — постепенное усложнение задач;
новизна — каждая задача вносит какой-то новый элемент знаний (новая команда, новый прием программирования);
наследование — следующая задача требует использования знаний, полученных при решении предыдущих задач.
В учебнике [11] рассматривается последовательность задач, которая позволяет ученикам осваивать приемы алгоритмизации в таком порядке:
составление линейных алгоритмов;
описание и использование вспомогательных алгоритмов;
составление циклических алгоритмов;
использование ветвлений в алгоритмах;
использование метода последовательной детализации при составлении сложных алгоритмов.
Разобравшись в рассмотренных задачах, выполнив самостоятельные задания аналогичного типа, ученики должны усвоить два основных принципа структурной методики алгоритмизации (структурного программирования);
всякий алгоритм может быть построен с использование грех типов управляющих структур: следование, ветвление, цикл;
при построении сложных алгоритмов следует применять метод последовательной детализации.
Способы описания алгоритмов. Традиционно в школьной информатике используются два способа описания алгоритмов: блок- схемы и учебный алгоритмический язык. В базовом курсе информатики необходимо использовать обе эти формы. Основное достоинство блок-схем - наглядность алгоритмической структуры. Однако это качество проявляется лишь в том случае, если изображение блок-схемы происходит стандартным способом. Основным следствие освоения учениками структурной методики должно стать умение при построении алгоритмов «мыслить структурами». Например, исходя из условия задачи делать следующие выводы: «Алгоритм решения данной задачи будет представлять собой два вложенных цикла, или цикл с вложенным ветвлением, или два последовательных цикла» и т. п. Структурно изображенные блок-схемы помогают такому видению алгоритма. Сравним, например, две блок-схемы, изображенные на рис. 1(а,б).
На первый взгляд, трудно понять, что на них изображен один и тот же алгоритм. Из схемы на рис. 1, а четко видна его структура: цикл - пока с вложенным ветвлением. В схеме на рис. 1, б довольно сложно увидеть эту же структуру. Схема на рис. 1,а изображена стандартно, схема на рис. 1, б - произвольно.
Алгоритмический язык — это текстовая форма описания алгоритма. Она ближе к языкам программирования, чем блок-схемы. Однако, это еще не язык программирования. Поэтому строгого синтаксиса в алгоритмическом языке нет. Для структурирования текста алгоритма на АЯ используются строчные отступы. При этом соблюдается следующий принцип: все конструкции одного уровня вложенности записываются на одном вертикальном уровне, вложенные конструкции сметаются относительно внешней вправо. Соблюдение этих правил улучшает наглядность структуры алгоритма, однако не дает такой степени наглядности, как блок- схемы.
Алгоритм на русском алгоритмическом языке в общем виде записывается в форме:
алг название алгоритма (аргумент и результат)
дано условия применимости алгоритма
надо цель выполнения алгоритма
нач описание промежуточных величин
| последовательность команд (тело алгоритма)
кон
В записи алгоритма ключевые слова обычно подчёркивались либо выделялись полужирным шрифтом. Для выделения логических блоков применялись отступы, а парные слова начала и конца блока соединялись вертикальной чертой.
Система КуМир.
Во второй главе будут рассмотрены задания в системе КуМир, поэтому рассмотрим ее особенности.
Система КуМир разработана исходя из потребностей российского образования:
Свободно распространяемая
Многоплатформенная
Нулевые требования к ресурсам
Поддерживается российской академией наук
В числе разработчиков – авторы многих учебников и учебных пособий по информатике.
Система КуМир нацелена на проведение эффективного практикума по основам алгоритмизации.
Простой язык, интегрированная среда.
Постоянная полная диагностика синтаксиса в процессе редактирования программы.
Возможность автоматической проверки при самостоятельной работе.
При подготовке заданий для учащихся, в «учительском» режиме КуМира при редактировании программы можно делать невидимыми или неизменяемыми некоторые строки. КуМир позволяет создать файл-задание, скомпонованное из шаблона – заготовки программы, которую можно дописать и блока тестирования.
КуМир может быть использован на любом количестве компьютеров в любых целях без получения каких-либо дополнительных разрешений.
В КуМире несколько исполнителей.
Исполнитель Кузнечик.
СКИ:
вперед 3
назад 2
перекрасить
Среда функционирования: координатная прямая.
Исполнитель Водолей:
СКИ:
∙ наполни А
∙ наполни B
∙ наполни C
∙ вылей А
∙ вылей B
∙ вылей C
∙ перелей из A в B
∙ перелей из A в C
∙ перелей из B в A
∙ перелей из B в C
∙ перелей из C в A
∙ перелей из C в B
Среда функционирования:
Оно содержит три сосуда, обозначенные латинскими буквами «A», «B», «C», а также
верхнюю панель, на котором находится меню «Задание».
Исполнитель Черепашка:
СКИ:
∙ поднять хвост
∙ опустить хвост
∙ вперед (вещ)
∙ назад (вещ)
∙ вправо
∙ влево
Среда функционирования:
Исполнитель Робот:
СКИ:
Команды перемещения:
вверх, вниз, влево, вправо
Робот перемещается на одну клетку вверх, вниз, влево, вправо.
Команда закрасить – закрашивает клетку, в которой стоит Робот.
Проверка истинности условия:
сверху свободно, снизу свободно, слева свободно, справа
свободно
Робот проверяет истинность условия отсутствия стены у той клетки, где находится Робот.
Можно использовать запись составных условий, образованных
логическими операциями И, ИЛИ, НЕ.
Среда функционирования:
В результате обучения учащиеся должны:
знать (понимать): способы записи алгоритмов: блок-схемы, учебный алгоритмический язык; основные алгоритмические конструкции: следование, ветвление, цикл; структуры алгоритмов; назначение вспомогательных алгоритмов; технологии построения сложных алгоритмов: метод последовательной детализации и сборочный (библиотечный) метод.
уметь: пользоваться языком блок-схем, понимать описания алгоритмов на учебном алгоритмическом языке; выполнить трассировку алгоритма для известного исполнителя; составлять несложные линейные, ветвящиеся и циклические алгоритмы управления одним из учебных исполнителей; выделять подзадачи; определять и использовать вспомогательные алгоритмы;
использовать приобретенные знания и умения в практической деятельности и повседневной жизни: для развития алгоритмического мышления.