В целом, рассматриваемые алгоритмы носили упрощенный характер. В них более или менее полно отражались операции, входящие в состав выполняемых действий. Последовательность действий не была строго определена.
Алгоритмы рассматривались преимущественно на конкретных, частных примерах, что более соответствует младшему школьному возрасту. Но в ряде случаев внимание учащихся обращалось на универсальный характер составленного алгоритма[17].
Предлагаемые задания выстраивались по нарастанию уровня сложности, чтобы учащиеся могли работать с большой долей самостоятельности. Также преследовалась цель построить задания таким образом, чтобы предыдущее включало в себя подготовку к работе со следующим.
Содержание заданий:
уточнение понятия «алгоритм»;
изучение и выполнение алгоритмов различных типов (линейного, разветвляющегося, цикличного) и представленных в различных формах (словесной, графической, в виде блок-схемы);
построение моделей процесса решения задачи;
составление алгоритмов (линейных);
решение задач, в том числе алгоритмического характера.
Работа по развитию алгоритмического мышления проводилась на уроках математики, в течение второй и, преимущественно, третьей четвертей. Было проведено 12 занятий. Занятие первое носило пропедевтический характер и было посвящено повторению правила выполнения действий в выражениях.
Фрагмент урока 1.
Учащиеся выполняют задания.
Этап 1 - мотивационный.
Даны числовые выражения:
+ 85 + 81 + 15
• 4 • 25 • 5
+ 75 + 42 + 25
• 15 • 6 • 10
Учащимся предлагается найти значения выражений (самостоятельная работа). После выполнения проверяются полученные ответы. Уточняется способ вычислений. Учащиеся замечают, что для удобства вычислений можно переставить числа в выражении местами (перегруппировать). Делается заключение, что в данном случае мы изменили порядок действий, но это не отразилось на результате. Повторяются правила: от перестановки слагаемых (множителей) сумма (произведение) не изменяется.
Этап 2 - выполнение учебной работы по построению алгоритмов по образцу.
Даны числовые выражения:
: 2 • (540 + 460) : 10
: 2 • 540 + 460 : 10
: 2 • (540 + 460 : 10)
Учащимся предлагается:
сравнить их: чем похожи выражения, чем они различаются;
сделать предположения о значениях выражений (фронтальная работа); - определить порядок действий и вычислить выражения ;
сравнить полученные результаты;
подтвердить (опровергнуть) предположение, о разных (различных) значениях (фронтальная работа).
Учащиеся сравнивают выражения, отмечают, что в них одинаковые числа и знаки действий. Выражения отличаются расстановкой скобок. Учитель подводит учащихся к выводу, что порядок действий в выражениях разный, и ответы будут различными. Учитель, как образец, помогает решить первый пример. Проставляется порядок действий и находятся значения выражений. Делается заключение.
Этап 3 - самостоятельное построение учащимися алгоритмов.
Даны числовые равенства:
: 5 + 10 • 2 = 50
: 5 + 10 • 2 = 3
: 5 + 10 • 2 = 10
Учащимся предлагается:
сравнить: чем похожи, чем различаются равенства;
ответить на вопрос: как могут быть получены разные значения (фронтальная работа);
определить порядок действий, чтобы равенства стали правильными, и в соответствии с этим порядком внести изменения в запись равенств (самостоятельная работа).
Задание 3 являлось более сложным по сравнению с предыдущими. Большинство учащихся выполнило задание правильно. У части учащихся возникли затруднения при его выполнении, и они не смогли справиться самостоятельно (ни один из трех примеров). После выполнения задания внимание учащихся еще раз было обращено на то, что разные значения выражений могут быть получены при выполнении действий в различном порядке.
Итоги занятия:
были сделаны следующие выводы:
) порядок действий может влиять на результат: изменение порядка выполнения действий может изменить результат (но не всегда);
) исходя из заданного (требуемого) результата, необходимо определять или изменять порядок действий. На втором занятии было рассмотрено само понятие «алгоритм», выполнялось задание на составление линейного алгоритма в словесной форме (выделение операций, их упорядочивание).
Фрагмент урока 2.
Этап 1 - мотивационный. Обсуждение понятия «алгоритм» как последовательности действий…
Учащимся предлагалось ответить на вопросы:
знакомо ли вам слово «алгоритм»?
как вы его понимаете? Что такое алгоритм? Назовите слова близкие по значению.
После ответов учащихся было дано определение «алгоритма» - это последовательность действий, которую необходимо выполнить для достижения определенного результата.
Этап 2 - выполнение учебной работы по образцу.Составление алгоритма. На примере решенной задачи рассматривался процесс решения задач: учащиеся выделили этапы работы с задачей, затем выстроили их в порядке выполнения:
) прочитать задачу;
) выделить условие (что известно);
) определить вопрос (что требуется найти);
) составить план решения задачи;
) выполнить действия;
) записать ответ.
При выполнении задания перед учащимися ставился вопрос о возможности или невозможности переставлять этапы местами. Внимание учащихся было обращено на то, что составленный алгоритм имеет общий характер и может быть использован для решения множества задач, а не одной какой-то конкретной задачи. Учащимся было сообщено, что запись алгоритма называется программой.
В конце занятия были выведены некоторые свойства алгоритмов в неявной форме:
. Алгоритм - это последовательность действий, которую необходимо выполнить для достижения определенного результата (решения определенной задачи).
. Алгоритм состоит из отдельных действий (операций, шагов и т.п.), выполняемых в определенном порядке (дискретность).
. Алгоритм должен приводить к правильному (ожидаемому) результату (результативность).
. Алгоритм разрабатывается в общем виде и может использоваться во многих случаях для решения однотипных заданий (масштабность).
Этап 3 - практический проходил на следующем занятии шло закрепление понятия алгоритма посредством упражнений по выполнению алгоритмов по заданным программам (на примере числовых выражений) и конструированию моделей решения числовых выражений.
Фрагмент урока 3.
Этап 1 - мотивационный.
Учащимся предлагаются задания.
. Выполни программу:
) число 67 умножить на число 20;
) из полученного результата вычесть число 132. Запиши эту программу действий в виде выражения, (для проверки обозначь порядок действий).
Составь схему выражения. На первом этапе задания учащимся нужно было выполнить предложенную программу, т.е. записать на математическом языке (с помощью математических символов) отдельные арифметические действия и найти их значения. Далее нужно было записать их в виде выражения. Для этого необходимо было ясно представлять отношения результатов действий между собой и способ оформления в выражении порядка их выполнения, заданного программой.
Этап 2 - выполнение учебной работы по образцу.
Целью следующего этапа задания было составить схему выражения, т.е. отойти от частного случая к общему, соблюдая порядок действий и отношения между членами выражения с помощью графических средств. Задание выполнялось совместно (фронтальная работа) и не вызвало затруднений.
Учащиеся составили выражение: 67 • 20 - 132
Правильность его была проверена простановкой порядка действий, был поставлен вопрос о необходимости скобок (в данном случае не нужно).
По выражению учащиеся составили схему:
Проверили ее соответствие данному выражению, также проставив порядок действий.
Этап 3 - самостоятельная работа. Далее учащимся предлагается самостоятельно выполнить аналогичные задания.
Программа 2.
) число 240 разделить на число 30;
) полученный результат вычесть из числа 56.
Программа 3.
) из числа 735 вычесть число 184;
) полученный результат умножить на число 8.
Решение задания 2:
выражение: 56 -240 : 30 и схема:
При выполнении задания 2 у некоторых учащихся возникли затруднения - не смогли правильно составить выражение: переставили местами компоненты второго действия (вычитания): уменьшаемое стало вычитаемым и наоборот. Получилось выражение: 240: 30 - 56.
Это нашло отражение и при составлении схемы.
После разбора и устранения ошибок и выполнялась проверка порядка выполнения действий и решался вопрос о необходимости скобок в выражении (не нужны).
При выполнении задания 3 ни у кого из учащихся не возникло затруднений с составлением выражения: (735 - 184) • 80.
Составить схему не смог никто (было поставлено условие - в схеме нельзя использовать скобки): вместо произведения разности двух чисел и третьего числа, получилась разность числа и частного двух чисел:
Простановка порядка действий по схеме выявила несоответствие ее
выражению. После наводящих вопросов один учащийся смог предложить решение,
близкое к правильному: -
×
Аналогично данной схеме, были изменены предыдущие:
1) ×2) -
×
Учащиеся сделали вывод: схемы такого вида нагляднее отражают этапы (шаги) вычислений. Они соответствуют программам, заданным в условии, т.е. представляют собой программы решения выражений, представленные в схематичном виде.
В дальнейшем работа со схемами была продолжена на занятиях № 6 и № 10. Задания заключались в составлении выражений по программам, представленным в виде схем. Предлагаемые схемы от занятия к занятию усложнялись - они содержали большее количество действий и имели более сложную структуру.
Учащимся предлагалось выполнять задания самостоятельно, после чего производилась проверка. Большинство учащихся с заданиями справлялись. На четвертом занятии учащиеся познакомились с записью программы в виде последовательности графических символов (цифры - для обозначения количества клеток, т.е. длины линий, и стрелки - для указания направления линий), выполняли рисование фигур по заданному алгоритму, составляли программы для рисования заданных фигур.
Фрагмент урока 4.
Тема: Рисование фигур по заданной программе (выполнение линейного алгоритма)
Цель занятия: научиться выполнять линейный алгоритм (на примере рисования фигур) по программе, представленной в виде последовательности графических символов.
Задание: выполните программу (для того, чтобы начать действие по программе, надо поставить точку, для обозначения начала):
. Начертите линию вверх на 4 клетки.
. Начертите линию вправо на 4 клетки.
. Начертите линию вниз на 2 клетки.
. Начертите линию влево на 4 клетки.
Запишите программу для рисования этой фигуры, используя для обозначения количества клеток - цифры, а для обозначения направления - знаки ←, →, ↑, ↓.
Учащиеся без затруднений выполнили программу (нарисовали фигуру), затем записали ее в виде: 4 ↑, 4 →, 2 ↓, 4 ←
На этапе 2 - работа по образцу, учитель, в качестве примера, выполнил такое задание с учащимися (фронтальная работа), но с другими данными.
Этап 3 - самостоятельная работа.
Далее было предложено здание на рисование фигуры по программе для самостоятельного выполнения. Программа была посложнее (содержала большее количество команд).
При выполнении задания часть учащихся получила искаженное изображение заданной фигуры.
Задание 1. Составьте программу для рисования фигуры:
Перед выполнением задания внимание учащихся было обращено на необходимость задания начальной точки для записи программы. При этом учащиеся самостоятельно заметили, что при разных начальных точках будут составлены разные программы. У большинства учащихся выполнение задания не вызвало затруднений.
На занятии № 5 была продолжена работа с графическими алгоритмами. Его целью было научить учащихся оценивать алгоритм с точки зрения рациональности и при необходимости производить оптимизацию (редактирование) программы. Это осуществлялось на примере программы рисования фигуры. Учащимся был задан алгоритм, в котором содержались действия, которые можно было заменить одним без изменения конечного результата.
Фрагмент урока 6 .
На занятии № 6 шло повторение изученного материала (работа со схемами). Учащимся были предложены более сложные задания для самостоятельного выполнения. После этого рассматривалась задача, решаемая с конца.
Задача: Максим задумал число. Вычел его из 74. Полученную разность умножил на 7. В результате у него получилось 623. Какое число задумал Максим?
Учащиеся решали задачу самостоятельно. После выполнения задания им было предложено произвести проверку полученного ответа: учащиеся записали ход действий Максима.
Обсуждался способ решения задачи - сравнив записи, учащиеся сделали вывод, что действия производятся в обратном порядке, т.е. задача решается с конца. Задачи подобного типа рассматривались и на других занятиях (например, занятие № 11).
На занятии № 7 учащиеся познакомились с записью программы в виде блок-схемы на примере линейного алгоритма.
Фрагмент урока 7
Учащимся были предложены задания (заимствованы из учебника Л.Г. Петерсон):
. В нашей стране водится много бобров. Бобр крупный грызун, ведет
полуводный образ жизни, обитает по лесным рекам, сооружает из ветвей и ила
домики, поперек реки делает плотины. Узнайте длину тела бобра (в сантиметрах),
выполнив действия по программе:
Выполнение первого задания не вызвало особых затруднений (были ошибки при вычислении).
Внимание учащихся было обращено на форму записи программы:
отдельные команды записаны в прямоугольники;
последовательность команд определена стрелками.
Данное задание было сложным и интересным, поэтому было пройдено сразу 2 этапа: мотивационный (побуждение учащихся на выполнение нового для них задания) и работа по образцу (решение выполнялось совместно с учителем)
Этап 3 - самостоятельное построение учащимися алгоритма.
После этого было предложено выполнить задание 2, с которым справились все учащиеся.
. Бобр отличный пловец и ныряльщик. Узнайте, какое максимальное время он
может находиться под водой, если а = 36:
ответ:______________
На следующем занятии шло повторение изученного материала, затем учащимся был предложен новый вид алгоритма - разветвляющийся, представленный в форме блок-схемы. Введение разветвленного алгоритма было произведено через создание проблемной ситуации.
Фрагмент урока 8
Учащимся были предложены задания:
. Найдите значения Х, выполнив заданный алгоритм: При подстановке первого значения а учащиеся получили ответ х = 629. При подстановке второго значения а на последнем шаге создается проблема (на 0 делить нельзя). Значение х в этом случае найти нельзя. (Некоторые учащиеся допустили ошибку, разделили число на ноль, получив в ответе 0). После повторения случаев деления с нулем (на ноль делить нельзя, но ноль можно делить на число), перед учащимися поставлена проблемная ситуация: как исключить случаи деления на ноль?