Одной из важнейших тем школьного курса информатики и информационно-коммуникационных технологий (ИКТ) является тема «алгоритмизация и программирование». Данная тема играет основную роль в развитии логического и алгоритмического стилей мышления учащихся и строго определена в примерной основной образовательной программе (2011 г.) (далее ООП). Данная ООП основана на Федеральном государственном образовательном стандарте (далее ФГОС) (от 2010 г.). В ООП предметные результаты информатики по теме «алгоритмизация и программирование» определены в разделе «Основы алгоритмической культуры». Согласно ООП [Савинов: 97] выпускник должен научиться:
-
понимать термины «исполнитель», «состояние исполнителя», «система команд»; понимать различие между непосредственным и программным управлением исполнителем;
-
строить модели различных устройств и объектов в виде исполнителей, описывать возможные состояния и системы команд этих исполнителей;
-
понимать термин «алгоритм»; знать основные свойства алгоритмов (фиксированная система команд, пошаговое выполнение, детерминированность, возможность возникновения отказа при выполнении команды);
-
составлять не ветвящиеся (линейные) алгоритмы управления исполнителями и записывать их на выбранном алгоритмическом языке (языке программирования);
-
использовать логические значения, операции и выражения с ними;
-
понимать (формально выполнять) алгоритмы, описанные с использованием конструкций ветвления (условные операторы) и повторения (циклы), вспомогательных алгоритмов, простых и табличных величин;
-
создавать алгоритмы для решения несложных задач, используя конструкции ветвления (условные операторы) и повторения (циклы), вспомогательные алгоритмы и простые величины;
-
создавать и выполнять программы для решения несложных алгоритмических задач в выбранной среде программирования.
Из вышеприведенных пунктов требований в ООП, видно что ученик должен научиться только написанию алгоритмов на «псевдо»-языках (алгоритмический, лого, блок-схемный, диаграммный и т.п.) или конкретных языках программирования. Кроме того, в основе ФГОС лежит системно-деятельностный подход. Асмолов А.Г. пишет, что «деятельность как система всегда имеет генетически развивающий план анализа, а тем самым, если говорить о разработке тех или иных программ, каждый раз надо выделять психолого-возрастные индивидуальные особенности развития личности ребенка и присущие этим особенностям формы деятельности» [Асмолов: 2]. Иными словами данный подход предполагает построение такого образовательного процесса в школе, в котором будут учитываться индивидуальные, возрастные, психологические и физиологические особенности обучающихся, т.е. для каждого обучающегося должна быть выстроена индивидуальная траектория обучения (ИТО).
В связи с чем возникает вопрос: как, учитывая интересы, способности и степень обученности каждого учащегося, индивидуализировать их процесс обучения, сохраняя интерес к данному предмету?
Дифференцированное обучение является одним из решений данной проблемы. Дифференцированное обучение как одна из технологий вариативного обучения – это часть общей дидактической системы, которая обеспечивает специализацию учебного процесса для различных групп обучаемых; это не разделение детей на классы по уровням, а технология обучения в одном классе детей разных способностей. Создание наиболее благоприятных условий для развития личности ученика [Горлова: 2]. Стоит отметить, что применение дифференцированного обучения, в процессе изучения школьниками программирования, отражено в ряде работ (А.А. Кузнецов [Кузнецов, 1999], И.Б. Готская [Готская], О.А. Козлов [Козлов, 2017], М.П. Лапчик [Лапчик, 2011], И.В Баженова [Баженова, 2016], А.Н. Ярыгин [Ярыгин, 2014], С.Д. Каракозов [Каракозов, 2018] и др.).
Целью данной работы являлась разработка набора авторских типовых индивидуальных заданий, который будет направлен на обучение групп с разным уровнем знаний с сохранением интереса к теме за счет вариативности заданий. Для достижения цели были поставлены следующие задачи: анализ учебно-методических комплектов (УМК) за 7-9-ый классы; выбор обобщенного списка тем из УМК, удовлетворяющих требованиям; разработка типов заданий по выбранным темам.
Среди множества УМК по школьному курсу информатики для рассмотрения были выбраны распространенные учебники следующих авторов: Семакин И.Г. [Семакин, 2015], Горячев А.В. [Горячев, 2015], Угринович Н.Д [Угринович, 2015], Босова Л.Л. [Босова, 2014], Поляков К.Ю. [Поляков, 2017]. Основным требованием к учебнику являлось наличие рассматриваемых тем: "Алгоритмизация и программирование" в 8 классе. Только два учебника удовлетворяло этим требованиям - учебники Босовой Л.Л. и Полякова К.Ю. Стоит отметить, что выбранные учебники так или иначе содержат ограниченный набор типов заданий. В большинстве случаев к этим типам относятся составление алгоритма / программы и тестовые задания.
Проведя анализ УМК, был составлен следующий обобщенный список заданий для проверки знаний:
-
Основы алгоритмизации. Способы описания алгоритмических конструкций.
- Прямая и обратная трассировки готового алгоритма, представленного в различных формах (блок-схемы, словесно-формульные);
- Составление блок-схем и словесно-формульного описания алгоритмов, содержащих линейные, ветвящиеся, повторяющиеся конструкции и все их возможные комбинации;
- Преобразование готового алгоритма из одной формы в другую (например, блок-схема, словесно-формульные формы);
- Запись математических выражений в линейном и алгоритмическом (математическом) видах для текущей системы исполнителей;
- Поиск семантических ошибок в алгоритме;
- Дописывание алгоритма на основе готовой части;
- Определение цели данного алгоритма.
-
Начала программирования на языке Pascal. Линейные, ветвящиеся и повторяющиеся (циклические) программы.
- Исправление ошибок в коде (синтаксические и семантические ошибки);
- Составление программ на основе заданных условий или алгоритма, содержащих линейные, ветвящиеся, повторяющиеся конструкции и все их возможные комбинации;
- Прямая и обратная трассировка программы;
- Создание новой программы на основе имеющегося алгоритма/программы;
- Определение цели данной программы;
- Разработка интерфейса для готового алгоритма или программы;
- Выбор типов данных для идентификаторов алгоритма или программы.
Кроме того, для любого из представленных выше типов заданий, возможно создание тестовых упражнений с множественным выбором ответа.
Рассмотрим пример типовых заданий на основе алгоритма решения квадратного уравнения в частном случае. В таблице ниже представлены блок-схема и словесно-формульное описание решения данной задачи.
Таблица 1 | |
Блок-схема: | Словесно-формульное описание: |
Начало 0) Ввод: a, b, c; 1) Вычислить дискриминант: D=b^2-4*a*c; 2) Если D>0, то корни искать по формуле: x1=(-b+sqrt(D))/(2*a); x2=(-b-sqrt(D))/(2*a); Вывод x1,x2, иначе п.3; 3) Если D=0, то корни искать по формуле: x=-b/(2*a); Вывод x, иначе п.4; 4) Если D, то вывод «Корней нет!»; Конец. |
1. Основы алгоритмизации. Способы описания алгоритмических конструкций.
1.1 Прямая и обратная трассировки готового алгоритма, представленного в различных формах (блок-схемы, словесно-формульные);
Задание 1.1.1 Вводятся параметры квадратного уравнения a=2, b=-3, c=-2. Используя приведенный алгоритм (Таблица 1), провести его прямую трассировку.
Задание 1.1.2 В ходе выполнения алгоритма (Таблица 1) получены следующие промежуточные значения: 2*a=2, а на выходе получен x1=-3. Используя алгоритм, провести его обратную трассировку.
1.2 Составление блок-схем и словесно-формульного описания алгоритмов, содержащих линейные, ветвящиеся, повторяющиеся конструкции и все их возможные комбинации;
Задание 1.2.1 Составить алгоритм решения квадратного уравнения. Алгоритм представить в виде блок-схемы (или в словесно-формульном виде).
1.3 Запись математических выражений в линейном и алгоритмическом (математическом) видах для текущей системы исполнителей;
Задание 1.3.1 Даны формулы, записанные в алгоритмическом (математическом) виде. Переписать их в линейном виде.
Таблица 2 |
Дано: |
Таблица 3 | |
1.4 Найти семантическую ошибку в алгоритме; | 1.5 Дописать алгоритм на основе готовой части; |
Задание 1.4.1 Найти и исправить в приведенном ниже алгоритме семантическую ошибку. |
Задание 1.5.2 Дописать приведенную ниже блок-схему |
2. Начала программирования на языке Pascal. Линейные, ветвящиеся и повторяющиеся (циклические) программы;
2.1 Исправление ошибок в коде (синтаксические и семантические ошибки);
Таблица 4 | |
Задание 2.1.1 Дан код программы, написанный на языке Pascal. Необходимо найти и исправить в данном коде синтаксические ошибки. |
Задание 2.1.2 Дан код программы, написанный на языке Pascal. Необходимо найти и исправить в данном коде семантические ошибки. |
2.2 Создание новой программы на основе имеющегося алгоритма/программы;
Задание 2.2.1 Реализовать на языке программирования Pascal алгоритм решения квадратного уравнения в частном случае, используя блок-схему/словесно-формульное описание (таблица 1).
Таблица 5 | |
2.3 Разработка интерфейса для готового алгоритма или программы; | 2.4 Выбор типов данных для идентификаторов алгоритма или программы; |
Задание 2.3.1 Ниже приведен код алгоритма решения квадратного уравнения в частом случае. Необходимо реализовать отсутствующий интерфейс для взаимодействия пользователя и программы. |
Задание 2.4.1 Ниже представлен код на языке программирования Pascal. Необходимо определить типы идентификаторов в представленной программе. |
Проанализировав выбранные учебно-методические комплекты по информатике за 8-й класс и составив обобщенный список тем, был создан набор авторских типовых индивидуальных заданий, рассчитанный на обучение групп школьников с разным уровнем знаний. За счет вариативности таких типов заданий возможно сохранение интереса к изучению содержательной линии "Алгоритмизация и программирование". Разработанные задания можно дополнить в старших классах при изучении темы «процедурное программирование», а также реализовать в различных формах: от письменной работы до автоматизированной системы проверки знаний.
Список литературы
Асмолов А. Г. Системнодеятельностный подход к разработке стандартов нового поколения // Педагогика. 2009. №. 4. С. 18—22.
Баженова И. В., Пак Н. И. Проективно-рекурсивная технология обучения в личностно-ориентированном образовании // Педагогическое образование в России. 2016. № 7. С. 7—13.
Босова Л. Л. Информатика : учебник для 8 класса. 2-е изд., испр. Москва: БИНОМ. Лаборатория знаний, 2014. 162 с.
Горлова Е. А. Дифференцированное обучение как реализация вариативного подхода к организации образовательного процесса // Обучение и воспитание: методики и практика. 2013. № 6. С. 84—88.
Горячев А. В. Информатика. 8 кл.: учеб. для организаций, осуществляющих образовательную деятельность. В 2 ч. Ч. 1. Москва: Баласс, 2015. 320 с.
Готская И. Б. Методическая система обучения информатике студентов педвузов в условиях рыночной экономики (теоретические основы, практика проектирования) : диссертация на соискание ученой степени кандидата педагогических наук. Санкт-Петербург, 1999.
Зеер Э. Ф. Индивидуальные образовательные траектории в системе непрерывного образования // Педагогическое образование в России. 2014. № 3. С. 74—82.
Каракозов С. Д. На пути к модели цифровой школы // Информатика и образование. 2018. №. 7. С. 4—15.
Козлов О. А. Управление формированием индивидуальной образовательной траектории с использованием информационных технологий //Ученые записки ИУО РАО. 2017. №. 1. С. 62—64.
Кузнецов А. А., Бешенков С. А., Мозолин В. П., Ракитина Е. А. Система обучения информатике в современной общеобразовательной школе // Компьютерные инструменты в образовании. 1999. № 6. С. 3—6.
Кузнецов Н. О. Проектирование и реализация индивидуальных траекторий обучения школьников программированию на базовом уровне : диссертация на соискание ученой степени кандидата педагогических наук. Нижний Новгород, 2012.
Лапчик М. П., Руденко А. Е. Развитие профессионального самоопределения учащихся при обучении программированию в системе дополнительного образования // Мир науки, культуры, образования. 2011. № 6-2 (31). С. 214—217.
Поляков К. Ю. Информатика 8 класс. Москва: БИНОМ. Лаборатория знаний, 2017. 256 с.
Cавинов Е. С. Примерная основная образовательная программа образовательного учреждения. Москва: Просвещение, 2011. 454 с.
Семакин И. Г. Информатика : учебник 8 класса. 3-е изд. Москва: БИНОМ. Лаборатория знаний, 2015. 176 с.
Угринович Н. Д. Информатика : учебник для 8 класса / Н. Д. Угринович. - 3-е изд. Москва: БИНОМ. Лаборатория знаний, 2015. 160 с.
Ярыгин А. Н., Аниськин В. Н., Пугач В. И., Пугач О. И. Приемы современного менеджмента в реинжиниринге образовательного процесса вуза // Вектор науки Тольяттинского государственного университета. 2014. № 3. С. 347—351.