Подготовка учащихся к решению олимпиадных задач. Олимпиадная информатика и психологическая подготовка учащихся


АНО ВПО
«Европейский Университет «Бизнес Треугольник»
 
 
 
ДИПЛОМНАЯ  РАБОТА
по дополнительной  профессиональной  образовательной  программе
профессиональной переподготовки
учитель информатики
/ 350  часов, 3 месяца /
 
Тема:
«Подготовка учащихся к решению олимпиадных задач. Олимпиадная информатика и психологическая подготовка учащихся»
   
Дипломную работу  подготовила:
Мурзина Ольга Ивановна
Должность:
учитель информатики
Место работы:
МБОУ «Лицей» г. Арзамас Нижегородской области
 Номер и дата договора: 2016/01-5319-10 от 10.10.2016
  
8  января  2017 г.
г.  Арзамас, Нижегородская область
Российская Федерация
Содержание № стр.
Введение 3
Глава 1. Олимпиадная информатика. 5
Олимпиады по информатике: разновидности направлений в олимпиадной информатике. 5
Олимпиады по программированию. Особенности заданий и возможности современной школы. 11
Глава 2. Подготовка учащихся к решению олимпиадных задач. 14
2.1. Примерная программа подготовки учащихся к олимпиадам по программированию. 14
Психологическая составляющая олимпиадной подготовки. 18
Заключение. 21
Литература. 22
Приложение 1. Текст заданий школьного этапа ВОШ 2015-2016 учебного года по информатике (Нижегородская область). 24
Приложение 2. Программа кружка по программированию. 26

Введение.
Олимпиады школьников – одно из главных диагностических мероприятий по определению степени творческого усвоения учебного материала по тому или иному предмету школьного цикла. Главным образом, именно они выявляют прогресс или регресс в поступательном интеллектуальном развитии одаренных детей, являются теми маркерами, которые позволяют учителям-предметникам корректировать программы подготовки своих сильнейших учеников.
Актуальность вопроса о квалифицированной олимпиадной подготовке учащихся диктуется требованиями ФГОС нового поколения и стандартом педагогического работника. Достижения учеников являются неотъемлемой частью портфолио любого учителя при заявке на первую или высшую квалификационную категорию.
Однако, если по основным предметам школьного курса олимпиадные задания более-менее (в зависимости от региона) коррелируют со школьной программой, то информатика стоит особняком. Дело в том, что в разных школах информатика в среднем звене ведется , где с 5 класса, где с 7 класса, а где и с 8 класса. В большинстве школ объем предмета не превышает 1 часа в неделю, а программа направлена на освоение простейших практических навыков работы с компьютером на уровне начинающего пользователя (включение компьютера, интерфейс операционной системы, офисные приложения). До 9 класса тексты олимпиад составляют сами учителя того или иного населенного пункта (округа, района, города). А вот с 9 класса начинаются «настоящие» олимпиады по информатике, а именно олимпиады по программированию. И здесь неотъемлемой частью является знание какого-либо языка программирования (Pascal, С/С++, Phyton, Java и т.п.). Закономерным является вопрос учителей: «Откуда возьмется знание языка программирования, если нет часов не его изучение в школьном курсе информатики?»
Таким образом, целью работы является выявление ресурсов для изучения программирования в различных вариантах УМК и рекомендации по использованию тех комплектов, которые дают учителю возможность синхронизировать требования олимпиадной информатики с подготовкой детей в рамках школьной программы.
Предметом исследования служит само понятие олимпиадной информатики во всех его ипостасях.
Методами исследования являются
Обобщение и систематизация материалов по видам олимпиадной информатики,
Обобщение и систематизация по различным вариациям предлагаемых сегодня УМК с целью выбора оптимального комплекта с учетом минимальной олимпиадной подготовки в программировании
Обобщение и составление примерной программы для внеурочной деятельности по подготовке к олимпиадам по программированию
Анализ, обобщение, выделение и адаптация к школьной реальности психологических приемов, необходимых для успешных выступлений учащихся на олимпиадах по программированию.

Глава 1. Олимпиадная информатика.
Олимпиады по информатике: разновидности направлений в олимпиадной информатике.
На сегодняшний день существует огромное множество различных олимпиад по информатике. Можно выделить огромное количество критериев для деления этих олимпиад на группы. Наиболее существенными мы считаем следующие три:
Форма проведения (очная/заочная)
Платность (платная/бесплатная)
Направленность (программирование/теоретические и прикладные знания)
Основанием для первой классификации служит форма проведения олимпиады по критерию очная-заочная (1). В таблице 1 приведены примеры олимпиад по информатике в соответствие с критерием (1).
Таблица 1.
Форма проведения олимпиады по информатике
Очная Заочная
Всероссийская олимпиада школьников по информатике (все этапы) -
Олимпиада школьников «ТехноКубок» (заключительный этап) Олимпиада школьников «ТехноКубок» (отборочные туры)
Открытая Московская олимпиада по программированию (заключительный этап) Открытая Московская олимпиада по программированию (отборочный этап)
КИТ (Компьютерные и информационные технологии) – международный конкурс по информатике КИТ (Компьютерные и информационные технологии) – международный конкурс по информатике (в большинстве случаев ученикам отдают задания на дом на 2-3 дня или неделю для решения)
Инфознайка – всероссийский конкурс по информатике Инфознайка – всероссийский конкурс по информатике (в большинстве случаев ученикам отдают задания на дом на 2-3 дня или неделю для решения)
Инфознайка-ПРОФИ – всероссийская олимпиада по программированию среди школьников (заключительный этап) Инфознайка-ПРОФИ – всероссийская олимпиада по программированию среди школьников (отборочный этап)
Открытая Олимпиада Университета Иннополис для школьников по программированию (заключительный этап) Открытая Олимпиада Университета Иннополис для школьников по программированию (отборочный этап)
Московская олимпиада школьников по информатике (заключительный этап) Московская олимпиада школьников по информатике (отборочный этап)
Олимпиады от проекта «Видеоуроки»
Олимпиады от проекта «Инфоурок»
Олимпиады от проекта «ФоксФорд»
Олимпиады от проекта «ФГОСТест»
И т.д.
Вторым основанием для классификации олимпиад по информатике берем критерий платности олимпиады (2). В таблице 2 приведены примеры разделения олимпиад по критерию (2).

Таблица 2.
Платность олимпиады
Платные Бесплатные
Олимпиады от проекта «Видеоуроки» Всероссийская олимпиада школьников по информатике (все этапы)
Олимпиады от проекта «Инфоурок» Открытая Московская олимпиада по программированию (все этапы)
Олимпиады от проекта «Олимпис» Олимпиада школьников «ТехноКубок» (все этапы)
Олимпиады от проекта «ФГОСТест» Олимпиады от проекта «ФоксФорд»
КИТ (Компьютерные и информационные технологии) – международный конкурс по информатике Всесибирская открытая олимпиада школьников по информатике
Инфознайка – всероссийский конкурс по информатике Олимпиада «Ломоносов»
Олимпиада школьников Санкт-Петербургского государственного университета по информатике
Олимпиада школьников по информатике и программированию
Московская олимпиада школьников по информатике (все этапы)
Открытая Олимпиада Университета Иннополис для школьников по программированию (все этапы)
Третьим критерием для классификации возьмем направленность олимпиады на программирование или на общетеоретическую подготовку и пользовательские знания (3). Примеры олимпиад при делении по этому принципу приведены в Таблице 3.
Таблица 3.
Направленность олимпиады по информатике
Программирование Общие теоретические знания и знания прикладных программ
Всероссийская олимпиада школьников (9-11 классы) Всероссийская олимпиада школьников (5-8 классы)
Открытая Московская олимпиада по программированию (все этапы) КИТ (Компьютерные и информационные технологии) – международный конкурс по информатике
Олимпиада школьников «ТехноКубок» (все этапы) Инфознайка – всероссийский конкурс по информатике
Инфознайка-ПРОФИ – всероссийская олимпиада по программированию среди школьников (все этапы) Олимпиады от проекта «Видеоуроки»
Открытая Олимпиада Университета Иннополис для школьников по программированию (все этапы) Олимпиады от проекта «Инфоурок»
Всесибирская открытая олимпиада школьников по информатике Олимпиады от проекта «ФоксФорд»
Межрегиональная олимпиада школьников «Высшая проба» по информатике Олимпиады от проекта «ФГОСТест»
Олимпиада школьников «Ломоносов» Олимпиада школьников Санкт-Петербургского государственного университета по информатике
Олимпиада школьников по информатике и программированию Московская олимпиада школьников по информатике (все этапы) Классификацию можно продолжать и по другим критериям, но в рамках данного исследования мы взяли, на наш взгляд, самые существенные основания для отбора.
Для полноты картины добавим в Таблицу 3 уровни олимпиад по Всероссийскому кодификатору.
Таблица 4.
Направленность олимпиады по информатике
Программирование Общие теоретические знания и знания прикладных программ
Всероссийская олимпиада школьников (9-11 классы) 1 уровень Всероссийская олимпиада школьников (5-8 классы)
Открытая Московская олимпиада по программированию (все этапы) 1 уровень КИТ (Компьютерные и информационные технологии) – международный конкурс по информатике
Олимпиада школьников «ТехноКубок» (все этапы) 3 уровень Инфознайка – всероссийский конкурс по информатике
Инфознайка-ПРОФИ – всероссийская олимпиада по программированию среди школьников (все этапы) Олимпиады от проекта «Видеоуроки»
Открытая Олимпиада Университета Иннополис для школьников по программированию (все этапы) 3 уровень Олимпиады от проекта «Инфоурок»
Всесибирская открытая олимпиада школьников по информатике 2 уровень Олимпиады от проекта «ФоксФорд»
Межрегиональная олимпиада школьников «Высшая проба» по информатике 2 уровень Олимпиады от проекта «ФГОСТест»
Олимпиада школьников «Ломоносов» 1 уровень Олимпиада школьников Санкт-Петербургского государственного университета по информатике 3 уровень
Олимпиада школьников по информатике и программированию 1 уровень Московская олимпиада школьников по информатике (все этапы) 2 уровень Очевидно, то ВУЗы отдают предпочтение именно олимпиадам по программированию. Таким образом, мы также выбираем предметом своего исследования олимпиады по программированию, как наиболее оптимальный вариант выигрышной стратегии для одаренных учеников при поступлении в профильный ВУЗ.
Олимпиады по программированию. Особенности заданий и возможности современной школы.
Итак, что же из себя представляют олимпиады по программированию? Начнем анализ с конкретного примера – задания школьного этапа Всероссийской олимпиады школьников по информатике для 9-11 классов за прошлый 2015-2016 учебный год по Нижегородской области (формулировки заданий школьного этапа ВОШ 2015-2016 учебного года содержится в Приложении 1).
Во-первых, на школьном этапе только по информатике практически никогда не делаются различия между учащимися 9, 10 и 11 классов. Всем предлагаются одинаковые задачи. Итоги, естественно, подводятся по параллелям, но уровень сложности заданий предлагается один для всех.
Обычно первая задача не требует для своего решения каких-то особенных знаний кроме общепринятых стандартов программирования (простые циклы и/или ветвления). Олимпиадной ее делает какой-нибудь маленький нюанс в условии, который нужно обязательно учесть.
Вторая задача требует хорошего навыка работы с математическими моделями и разнообразием комбинаций циклов и ветвлений, стандартов и специальных знаний начального уровня (например, навык работы со строками и массивами и т.п.).
Третья и четвертая задачи – высокий уровень знаний абстрактных структур данных, теории графов, рекурсий, различных сортировок, умений использовать вспомогательные алгоритмы (функции и процедуры) и т.д.
В современной школе при хорошем раскладе (2 ч информатики в неделю, с 5 класса по 11 класс, например) без дополнительной нагрузки на учителя возможно подготовить ребенка для решения первой и, может быть, даже второй задачи на уровне школьного или городского этапа ВОШ. Если же информатика преподается только 1 час в неделю, то при огромных усилиях педагога ребенок сможет решить в лучшем случае первую задачу на школьном (а если пройдет дальше, то небольшой вероятностью на городском этапе).
Рассмотрим УМК, которыми пользуется большинство учителей информатики сегодня, с точки зрения подготовки по программированию уже к 9 классу на уроках в средней школе. На сегодняшний день самыми распространенными являются следующие УМК:
Угринович Н.Д. УМК «Информатика», 7-9 классы
Семакин М.Г. и др. УМК «Информатика», 7-9 классы
Босова Л.Л., Босова А.Ю. УМК «Информатика», 5-9 классы.
Итак, рассмотрим эти УМК только по критерию наличия разделов программирования в рекомендованных рабочих программах к началу 9 класса (в сентябре проходит школьный этап Всероссийской олимпиады школьников по информатике).
Таблица 5.
№ УМК Класс Раздел программирования, ч
1 Угринович Н.Д. УМК «Информатика», 7-9 классы 7 класс -
8 класс -
9 класс Основы алгоритмизации и объектно-ориентированного программирования, 14 ч
2 Семакин М.Г. и др. УМК «Информатика», 7-9 классы 7 класс -
8 класс -
9 класс Управление и алгоритмы, 12 ч
Введение в программирование, 15 ч
3 Босова Л.Л., Босова А.Ю. УМК «Информатика», 5-9 классы. 5 класс -
6 класс Алгоритмика, 10 ч
7 класс -
8 класс Основы алгоритмизации, 10 ч
Начала программирования, 10 ч
9 класс Алгоритмизация и программирование, 8 ч
При внимательном рассмотрении Таблицы 5 мы видим, что к началу 9 класса можно подготовить ребенка к решению хотя бы одной-двух олимпиадных задач только по УМК Босовой Л.Л., Босовой А.Ю., т.к. основы алгоритмического мышления в нем начинают закладываться уже в 6 классе. На этапе изучения тем по алгоритмизации в 6 классе легко можно отобрать детей, которые хорошо усваивают программирование, для дальнейшей целенаправленной работы с ними. Далее, в 8 классе объемно рассматриваются темы основ алгоритмизации с последующим переключением на применение конкретного языка программирования.
Конечно, для успешного выступления на олимпиадах по программированию этого будет явно недостаточно. Если же учителю поставили именно такую цель, то необходимы внеурочные формы дополнительной подготовки, такие как кружок или факультатив по программированию, где целенаправленно будут изучаться теория, приемы и методы программирования на конкретном языке.

Глава 2. Подготовка учащихся к решению олимпиадных задач.
Примерная программа подготовки учащихся к олимпиадам по программированию.
Внеурочные формы подготовки ребят к участию в олимпиадах по программированию включают в себя такие формы, как кружок, факультатив или дистанционный курс. Помимо занятий с преподавателем подразумевается еще достаточный объем самостоятельной работы дома и участие в различных контестах на специализированных сайтах.
Исходя из возможностей современной школы, предлагаем примерную программу кружка по программированию из расчета 2 ч в неделю, т.е. 70 ч в год. Также обращаем внимание, что начинать обучение рекомендуем с 8 класса (для некоторых детей можно снизить порог и начинать с 7 класса при условии достаточного уровня развития абстрактного мышления). Кружок желательно организовывать с перспективой на будущее, т.е. на несколько лет обучения. В педагогической психологии прослеживается тенденция к тому, что лучших результатов обучения достигают разновозрастные группы детей, что как раз реализуемо при организации многолетнего кружка. Оптимальный срок реализации подготовки к олимпиадному программированию, на наш взгляд, – 3 года.
Программа кружка полностью представлена в Приложении 2 к данной работе. Здесь мы приводим только пояснительную записку к ней для ознакомления.
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
Настоящая рабочая программа кружка по программированию предназначена для учащихся 8-11 классов МБОУ «Лицей» г. Арзамас Нижегородской области на 2016-2017 учебный год из расчета 2 ч в неделю (7-9 классы) и 1 ч в неделю (10-11 классы).
Программирование – это раздел информатики, задачей которого является процесс разработки программы на определенном языке программирования, одновременно оно является самым сложным разделом предмета. Известно также, что все значимые олимпиады по информатике проводится как раз по программированию.
У способных учащихся в каждой параллели имеется желание и потребность изучения программирования на более глубоком уровне, что позволяет успешно конкурировать со сверстниками из других учебных заведений на различных олимпиадах по информатике, а также дает возможность продолжить развиваться на высоком уровне и в послешкольный период их жизни, в том числе поможет в перспективе найти престижную работу.
Организация кружка даёт возможность в системе дополнительного образования предоставить учащимся условия для изучения программирования с учетом их интересов, склонностей и способностей, способствует удовлетворению познавательных интересов, а для учащихся старших классов выполняет еще и задачу профессиональной ориентации. При этом существенно расширяются и возможности выстраивания каждым учеником, посещающим кружок, индивидуальной образовательной траектории, что особенно важно, если кружок ведет их же учитель информатики. Ребенок в этом случае получает возможность и на уроках продолжать развитие в рамках индивидуальной образовательной траектории.
Цели и задачи программы:
Формирование у учащихся алгоритмического мышления.
Углубление у школьников знаний, умений и навыков решения специальных групп задач по математике, которые не изучаются в школьном курсе, но востребованы для практики программирования (логика, бинарный поиск, выигрышные стратегии, теория графов, системы счисления, классы сравнений по модулю, учет сложности алгоритма и т.п.).
Углубление у школьников знаний, умений и навыков решения различных задач по программированию.
Формирование умений, навыков и опыта решения олимпиадных задач.
Возможность реализовать свои творческие способности.
Формирование интереса к профессиям, связанным с программированием.
Кружок рассчитан на 3 группы:
учащиеся 7-8 классов – младшая группа,
учащиеся 9 классов – средняя группа,
учащиеся 10 – 11 классов – старшая группа.
Нагрузка и расписание:
70 уч. часов, (2 час/нед.) – младшая группа (вторник 15-15 – 16-00; четверг 15-15 - 16-00)
70 уч. часов (2 час/нед.) – средняя группа (среда 15-15 - 16-00; пятница 15-15 - 16-00)
35 уч. часов (1 час/нед.) – старшая группа (понедельник 15-15 – 16-00).
Используемые методы обучения:
проблемное изложение,
исследовательский метод,
эвристический метод с иллюстрированием и практической реализацией в среде программирования;
проектный метод (подготовка конечного продукта с полной документацией для представления и оценки экспертными комиссиями на научно-практических конференциях различного уровня).
По окончании каждого курса учащиеся должны:
Знать (на разных уровнях глубины):
правила представления данных на выбранном языке программирования;
правила записи основных операторов: ввода, вывода, присваивания, ветвления, цикла;
правила записи программы;
содержание этапов разработки программы: алгоритмизация-кодирование-отладка-тестирование-отправка на сервер-отладка и т.д.;
уметь (на разных уровнях развития программных навыков):
составлять программы решения вычислительных и других задач;
писать интерактивные программы;
работать в среде программирования, соответствующей выбранному языку программирования;
осуществлять отладку и тестирование программы;
уметь отправлять написанные программы на удаленный сервер для автоматического тестирования;
понимать сообщения, приходящие от тестирующей системы, корректировать свою программы согласно полученной обратной связи.

Психологическая составляющая олимпиадной подготовки.
Одним из важнейших факторов победы в олимпиадах по информатике (как и в спорте) является психологический фактор. В любой деятельности проявляются и развиваются различные психические свойства личности:
интеллектуальные, обеспечивающие качество принятых решений;
психомоторные, определяющие качество выполняемых действий и операций;
эмоциональные, влияющие на энергетику и экспрессивные характеристики деятельности;
волевые, обеспечивающие преодоление возникающих препятствий;
коммуникативные, направленные на осуществление взаимодействия с другими людьми;
нравственные, определяющие мотивацию деятельности и соответствие целей, средств, результатов определенным моральным нормам.
Наличие у ребенка набора определенных психических свойств, отвечающих олимпиадной специфике, обеспечивает ему высокую результативность тренировочной и соревновательной деятельности.
Задачей учителя является не только обучение детей тем или иным приемам решения задач по программированию, но и формирование личностных качеств, способствующих достижению ими высоких результатов в олимпиадной деятельности. Таким образом, наставник должен наряду с чисто профессиональными знаниями хорошо владеть знанием психологических особенностей учеников, умением проводить первичную диагностику необходимых им свойств и качеств, знанием специфических законов их формирования.
В настоящее время существует три основных направления психологического сопровождения становления одаренных детей:
Психологический отбор для занятий конкретным видом деятельности.
Формирование коллектива единомышленников, развитие командных навыков.
Комплектование команд для выступлений на командных олимпиадах.
Дадим краткую характеристику каждому из этих направлений.
Для грамотного решения проблемы отбора необходимо знание базовых параметров определенных психологических качеств и свойств личности, существенно влияющих на достижение высокого результата в данном конкретном предмете, а именно в программировании. На первом этапе отбираются все дети, имеющие интерес и склонность к данной деятельности. На втором этапе селекции (примерно через полгода после начала занятий на первом году кружка) отбирают перспективных детей, способных добиться высоких результатов. Здесь помимо специфических интеллектуальных способностей важно правильно оценить и волевые, эмоциональные, психомоторные, сенсорные качества, а также социально-личностные особенности. А на третьем этапе отбора (по возможности) решается вопрос о направлении на олимпиаду наиболее подготовленных на данный момент времени детей.
Проблема формирования коллектива единомышленников решается учителем с учетом личностных особенностей детей; требований, предъявляемых к ученикам соревнованиями по программированию; особенностей, присущих этому виду деятельности.
Комплектация команды к командному соревнованию также напрямую связана с учетом психологических закономерностей создания и функционирования коллектива, поддержанием благоприятного для работы психологического климата в нем. Ответственность за это несет наставник, которому без определенных знаний в области психологии не обойтись.
Главным же психологическим фактором в работе с одаренными детьми мы считаем постоянную работу над формированием и поддержанием позитивного мышления. Поэтому применять практику позитивного мышления нужно как можно чаще. Ведь мастерство (и не только в программировании) приходит постепенно с количеством повторений (способа решения) данного поведенческого паттерна.

Заключение.
В дипломной работе дан обзор современного положения дел в олимпиадной информатике и рекомендации для улучшения результатов в этом направлении для работающих учителей. Вся работа основана на личном опыте учителя информатики, занимающегося с олимпиадниками в течение последних четырех лет в школе, где есть классы с углубленным изучением предметов физико-математического профиля. За такой короткий срок нам еще не удалось выйти на заключительный этап ВОШ, но имеется уже опыт побед на муниципальном этапе (все 4 года подряд с 9 по 11 класс), выходов на региональный этап (3 года подряд), 3-6 места в рейтинге регионального этапа ВОШ по программированию, а также регулярное участие воспитанников в контесктах на сайте Codeforces.
В первой главе дан обзор олимпиад по информатике, приведена их классификация по разным основанием, сделаны выводы о необходимости подготовки именно к олимпиадам по программированию.
Во второй главе дана примерная программа подготовки к олимпиадному программированию, разработанная автором данной дипломной работы. Данная программа прошла апробацию в течение последних 4 лет. Автор имеет хорошие результаты, как на школьном уровне (победы на школьном, муниципальному уровнях ВОШ, поступление в ЛКШ (Летнюю компьютерную школу при МГУ, где преподают тренеры сборной России по программированию), так и на уровне ведущего ВУЗа, где ее ученик в занял призовое место в олимпиаде МИФИ (октябрь 2016 года) по программированию (как сказали организаторы олимпиады: «Уже много-много лет у нас не было в призерах первокурсника!»).
Также автор имеет (помимо педагогического) психологическое образование и опыт мотивации и психологической поддержки своих учеников на соревнованиях по программированию различного уровня, о чем кратко и обзорно сообщает во второй главе.
Литература.
Босова Л.Л., Босова А.Ю. Информатика. Учебник для 5 класса. ФГОС. – БИНОМ. Лаборатория знаний, 2013. – 184 с.: ил.
Босова Л.Л., Босова А.Ю. Информатика. Учебник для 6 класса. ФГОС. – БИНОМ. Лаборатория знаний, 2013. – 213 с.: ил.
Босова Л.Л., Босова А.Ю. Информатика. Учебник для 7 класса. ФГОС. – БИНОМ. Лаборатория знаний, 2013. – 224 с.: ил.
Босова Л.Л., Босова А.Ю. Информатика. Учебник для 8 класса. ФГОС. – 2-е изд., испр. – БИНОМ. Лаборатория знаний, 2014. – 160 с.: ил.
Босова Л.Л., Босова А.Ю. Информатика. Учебник для 9 класса. ФГОС. – БИНОМ. Лаборатория знаний, 2013. – 184 с.: ил.
Босова Л.Л. Босова А.Ю. Информатика. Методическое пособие для 5-6 классов. ФГОС. – БИНОМ. Лаборатория знаний, 2014. – 384 с.: ил.
Босова Л.Л. Босова А.Ю. Информатика. Методическое пособие для 7-9 классов. ФГОС. – БИНОМ. Лаборатория знаний, 2016. – 464 с.: ил.
Босова Л.Л. Босова А.Ю. Информатика. Программа для основной школы. 5-6 классы. 7-9 классы. ФГОС. – БИНОМ. Лаборатория знаний, 2013. – 88 с.: ил.
Демидова И.Ф. Педагогическая психология: учебное пособие для ВУЗов. – Ростов н/Д: Феникс, 2009. – 315 с.
Китаева М.В. Психология победы в спорте: учеб. пособие. – Ростов н/Д.: Феникс, 2006. – 208 с.: ил.
Окулов С.М. Информатика: развитие интеллекта школьников. – 2-е изд., испр. – М.: БИНОМ. Лаборатория знаний, 2008. – 212 с.: ил.
Семакин И.Г. и др. Информатика. Учебник для 7 класса. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2010. – 168 с.
Семакин И.Г. и др. Информатика. Учебник для 8 класса. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2010. – 176 с.
Семакин И.Г. и др. Информатика. Учебник для 9 класса. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2010. – 200 с.
Семакин И.Г. Информатика. Методическое пособие для 7-9 классов. – М.: БИНОМ. Лаборатория знаний, 2016. – 160 с.
Сперлинг А.П. Психология/ Пер. с англ. Ананин С.И. – ООО «Попурри», 2002. – 432 с.: ил.
Угринович Н.Д. Информатика. Учебник для 7 класса. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2010. – 168 с.: ил.
Угринович Н.Д. Информатика. Учебник для 8 класса. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2010. – 160 с.: ил.
Угринович Н.Д. Информатика. Учебник для 9 класса. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2010. – 152 с.: ил.
Угринович Н.Д. Информатика, 7-9 классы. Методическое пособие. ФГОС. – М.: БИНОМ. Лаборатория знаний, 2016. – 96 с.

Приложение 1.
Текст школьной олимпиады по информатике
2015–2016 уч. года
«Квартира – 100 баллов».
Боря Лейкин на время каникул устроился работать помощником почтальона. Сегодня ему необходимо доставить телеграмму в квартиру n девятиэтажного дома, в котором несколько подъездов, а на каждом этаже подъезда по четыре квартиры
Требуется написать программу, которая по номеру квартиры n выведет номер подъезда и этаж на котором находится эта квартира.
Ваша программа должна:
прочитать из исходного файла task1.in целое число n (1 ≤ n ≤ 360);
подсчитать и вывести в файл task1.out два числа – в первой строке номер нужного подъезда, а во второй – номер этажа, на котором находится квартира.
Например:
task1.in task1.out
193 6
4
«Треугольники – 100 баллов».
Учительница математики Мария Ивановна дала ученикам задание построить треугольник стороны, которого целые числа, а периметр равен 9. Первой задание выполнила Оля Знайкина и сообщила, что она построила три разных треугольника с периметром 9: со сторонами 3, 3, 3, со сторонами 2, 3, 4 и со сторонами 1, 4, 4.
Конечно Оля молодец, но если бы периметр был больше, то подсчитать число подходящих треугольников было бы нелегко.
Составьте программу, которая по заданному периметру подсчитывает и сообщает число разных (неравных) треугольников с периметром p, стороны которых целые числа.
Ваша программа должна:
прочитать из исходного файла task2.in целое число p (3 ≤ p  ≤ 1000);
подсчитать и вывести в файл task2.out одно число: количество разных (неравных) треугольников, стороны которых – целые числа, а периметр равен p.
Например:
Task2.in Task2.out
9 3
23 14
«Строка – 100 баллов».
Последовательность строк строится по следующему правилу: S(1)=”A”, S(2)=”B”, S(k)=S(k-1)+S(k-2), если k3 (последовательность Фибоначчи). Необходимо определить число подстрок ”AB” встречающихся в строке с номером n.
Ваша программа должна:
прочитать из исходного файла task3.in целое число n (1 ≤ n ≤ 45);
подсчитать и вывести в файл task3.out одно число – количество подстрок ”AB” в строке S(n) (возможно длинное целое число).
Например:
Task3.in Task3.out
5 1
8 8
11 33
«Оси – 100 баллов».
На листе в клетку (клетки - квадраты) закрасили несколько клеток и получили клетчатую фигуру. Она имеет размеры n (n100) по вертикали и k (k100) по горизонтали. Сама фигура описывается n строками, содержащими по k символов 1 и 0 в каждой строке (1 - закрашено и 0 - не закрашено).
Необходимо определить, сколько осей симметрии имеет эта фигура.
Ваша программа должна:
прочитать из первой строки исходного файла task4.in число элементов массива n ( n ≤ 100) и k (k100);
прочитать из последующих n строк состояние клеток фигуры. Известно, что белых полей по сторонам от фигуры в описании нет (т.е. задан минимальный габаритный прямоугольник, содержащий в себе фигуру);
найти и вывести в файл task4.out одно число – количество осей симметрии заданной фигуры.
Например:
Task4.in Task4.out
3 5
11111
11011
11111 2
5 5
00111
00011
00101
01000
10000 1
Примечание. Приведенные примеры для фигур

Приложение 2.
Кружок по программированию
«Олимпиадное программирование»
Кабинет 307
Учитель Мурзина О.И.
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
Настоящая рабочая программа кружка по программированию предназначена для учащихся 8-11 классов МБОУ «Лицей» г. Арзамас Нижегородской области на 2016-2017 учебный год из расчета 2 ч в неделю (7-9 классы) и 1 ч в неделю (10-11 классы).
Программирование – это раздел информатики, задачей которого является процесс разработки программы на определенном языке программирования, одновременно оно является самым сложным разделом предмета. Известно также, что все значимые олимпиады по информатике проводится как раз по программированию.
У способных учащихся в каждой параллели имеется желание и потребность изучения программирования на более глубоком уровне, что позволяет успешно конкурировать со сверстниками из других учебных заведений на различных олимпиадах по информатике, а также дает возможность продолжить развиваться на высоком уровне и в послешкольный период их жизни, в том числе помогает найти престижную работу.
Организация кружка даёт возможность в системе дополнительного образования предоставить учащимся условия для изучения программирования с учетом их интересов, склонностей и способностей, способствует удовлетворению познавательных интересов, а для учащихся старших классов выполняет еще и задачу профессиональной ориентации. При этом существенно расширяются и возможности выстраивания каждым учеником, посещающим кружок, индивидуальной образовательной траектории, что особенно важно, если кружок ведет их же учитель информатики. Ребенок в этом случае получает возможность и на уроках продолжать развитие в рамках индивидуальной образовательной траектории.
Цели и задачи программы:
Формирование у учащихся алгоритмического мышления.
Углубление у школьников знаний, умений и навыков решения специальных групп задач по математике, которые не изучаются в школьном курсе, но востребованы для практики программирования (логика, бинарный поиск, выигрышные стратегии, теория графов, системы счисления, классы сравнений по модулю, учет сложности алгоритма и т.п.).
Углубление у школьников знаний, умений и навыков решения различных задач по программированию.
Формирование умений, навыков и опыта решения олимпиадных задач.
Возможность реализовать свои творческие способности.
Формирование интереса к профессиям, связанным с программированием.
Кружок рассчитан на 3 группы:
учащиеся 7-8 классов – младшая группа,
учащиеся 9 классов – средняя группа,
учащиеся 10 – 11 классов – старшая группа.
Нагрузка и расписание:
70 уч. часов, (2 час/нед.) – младшая группа (вторник 15-15 – 16-00; четверг 15-15 - 16-00)
70 уч. часов (2 час/нед.) – средняя группа (среда 15-15 - 16-00; пятница 15-15 - 16-00)
35 уч. часов (1 час/нед.) – старшая группа (понедельник 15-15 – 16-00).
Используемые методы обучения:
проблемное изложение,
исследовательский метод,
эвристический метод с иллюстрированием и практической реализацией в среде программирования;
проектный метод (подготовка конечного продукта с полной документацией для представления и оценки экспертными комиссиями на научно-практических конференциях различного уровня).
По окончании каждого курса учащиеся должны:
Знать (на разных уровнях глубины):
правила представления данных на выбранном языке программирования;
правила записи основных операторов: ввода, вывода, присваивания, ветвления, цикла;
правила записи программы;
содержание этапов разработки программы: алгоритмизация-кодирование-отладка-тестирование-отправка на сервер-отладка и т.д.;
уметь (на разных уровнях развития программных навыков):
составлять программы решения вычислительных и других задач;
писать интерактивные программы;
работать в среде программирования, соответствующей выбранному языку программирования;
осуществлять отладку и тестирование программы;
уметь отправлять написанные программы на удаленный сервер для автоматического тестирования;
понимать сообщения, приходящие от тестирующей системы, корректировать свою программы согласно полученной обратной связи.

Тематическое планирование
Младшая группа (7-8 класс) первый год обучения (2 ч в неделю):
№ Тема Кол-во часов
1 Организационное занятие. Техника безопасности. Что такое программирование. 1
2 Введение в программирование. Программа, как способ записи алгоритма. Понятие об исполнителе алгоритма. 1
3 Общее понятие об алгоритме. Свойства алгоритма. Выполнение алгоритма исполнителем. 2
4 Инструменты программирования. Языки высокого и низкого уровня. Используемые на практике компиляторы. Что такое интерпретаторы?
Элементы интерфейса Pascal. Структура программы на языке Pascal. Операторы и команды Pascal. 2
5 Загрузка и запуск программы , написанной на Pascal. Редактирование программы. Понятие об отладке программы и тестировании. 2
6 Константы, переменные, данные в языке Pascal. 2
7 Оператор присваивания. Арифметические операции. Вывод результатов на экран 2
8 Синтаксис и семантика. Типичные ошибки. Сообщения об ошибках. 1
9 Формат результата. Оценка результата 1
10 Ввод данных. Порядок выполнения в программах. Практическая работа по применению операторов ввода-вывода. 2
11 Линейный алгоритм. Практическая работа по решению задач линейной структуры. 4
12 Условный оператор if -then-else. Практическая работа по решению задач на ветвление и каскады ветвлений. 4
13 Оператор выбора case. Преимущества и недостатки конструкции case при решении задач на ветвление. Практическая работа по решению задач на ветвление с помощью оператора выбора. 2
14 Логические связки и выражения. Сложные условия при реализации ветвления. Правила оформления сложных условий в языке Pascal. Практическая работа на применение сложных условий. 2
15 Практическая работа по решению задач различного уровня сложности на ветвление 4
16 Понятие о цикле. Простейший оператор цикла for. Ограничения цикла for в Pascal. Практическая работа по решению задач на применение цикла for. Стандарты: реализация счетчика, суммы, произведения, поиска min, max, обмены. 6
17 Циклы с пред- и пост- условием в Pascal. Практическая работа по решению задач на применение циклов с пред- и пост- условием. 4
18 Практическая работа по решению задач различного уровня сложности на циклы и ветвления. Разбор решений олимпиадных задач уровня школьного этапа ВОШ прошлых лет. 6
19 Символьные переменные в Pascal. Операторы работы с символьными переменными. Практическая работа по решению задач на символьные переменные. 4
20 Массивы: понятие, для чего нужны массивы. Одномерный массив. Объявление одномерного массива в Pascal. Ввод одномерного массива в Pascal. Обработка одномерного массива в Pascal. Вывод одномерного массива в Pascal. Стандарты при обработке одномерного массива в Pascal (счетчик, сумма, произведение, поиск min, max, обмен значений). Новые стандарты – сортировка массива (пузырек, по номерам, быстрая сортировка). 8
21 Строковые переменные как одномерный массив из символов. Операции со строками. Решение задач на обработку строк. 4
22 Практическая работа по решению олимпиадных задач по программированию. 4
23 Зачетное занятие 1
Резерв 1
Итого: 70 час
Планируемый результат: выполнение итоговой практической работы (2-3 задачи повышенного уровня сложности). Протокол и анализ выполнения зачетной работы.
Средняя группа (9 класс) второй год обучения (2 ч в неделю):
Тематическое планирование
№ Тема занятий Кол-во часов
1 Организационное занятие. Техника безопасности. Повторение. 2
2 Логический тип данных в Pascal. Флажки. Практическая работа по решению задач с применением логических переменных. 2
3 Двумерные массивы как массивы из одномерных массивов. Теория матриц. Понятия главной и побочной диагонали. Единичная матрица. Практическая работа по решению задач с использованием двумерных массивов. 6
4 n-мерные массивы в Pascal. Правила объявления таких массивов и обращения к элементам n-мерного массива. Практическая работа по решению задач на применение n-мерных массивов. 4
5 Вычислительная сложность алгоритма. Формула сложности алгоритма. Что такое логарифм? Что дает нам умение оценивать сложность алгоритмов? Оценка сложности различных способов сортировки одномерного массива (пузырек, по номерам, быстрая сортировка) 2
6 Процедуры в Pascal. Способы описания и вызова процедур. Разбиение задачи на подзадачи и решение подзадач в виде процедур. Детализация сверху-вниз и снизу-вверх. Практическая работа по использованию процедур при решении задач. 4
7 Функции в Pascal. Способы описания и вызова функций. Отличие функции от процедуры. Использование функций при решении задач. Практическая работа по использованию функций при решении задач. 4
8 Рекурсии. Стандарты с применением рекурсивных алгоритмов (быстрая сортировка). Оценка сложности алгоритмов с рекурсиями. Практическая работа на применение рекурсивных алгоритмов. 4
9 Файловые переменные. Объявление и типы файловых переменных. Чтение из файла и запись результата в файл. Практическая работа на применение навыков использования файловых переменных. 4
10 Тип множество (Set). Работа с переменными этого типа. Область применения. 2
11 Комбинаторика в алгоритмах. Размещения с повторениями, перестановки, подмножества, разбиения, коды Грея, подсчет количеств. Решение задач на комбинаторику. 10
12 Теория графов. Матрица смежности. Деревья. Обход деревьев. Перебор с возвратом. Решение задач на применение графов. 10
13 Абстрактные типы данных: стек, очереди, куча. Решение задач с использованием стека и очереди. 10
14 Практическая работа по решению олимпиадных задач по программированию. 4
15 Зачетное занятие 1
16 Резерв 1
Итого: 70 час
Планируемый результат: выполнение итоговой практической работы (2-3 задачи высокого уровня сложности). Протокол и анализ выполнения зачетной работы.
Старшая группа (10-11 класс) третий год обучения (1 ч в неделю):
Тематическое планирование
№ Тема занятий Кол-во часов
1 Организационное занятие. Техника безопасности. Повторение. 2
2 Алгоритмы на графах: рекурсивная обработка деревьев, кратчайшие пути (поиск в ширину, в глубину), связные компоненты. 2
3 Динамическое программирование (таблица значений). Решение задач на динамическое программирование. 4
4 Сопоставление с образцом. Алгоритмы Кнута-Морриса-Пратта, Бойера-Мура, Рабина. Суффиксные деревья. 4
5 Оптимальное кодирование. Неравенство Крафта-Макмиллана. Код Хаффмана. Код Шеннона-Фано. Решение задач на оптимальное кодирование. 4
6 Хэширование. С открытой адресацией и со списками. Решение задач на хэширование. 4
7 Сбалансированные деревья. Представление множеств с помощью деревьев. 2
8 Контекстно-свободные грамматики. Метод рекурсивного спуска. Разбор LL(1)-грамматик. 2
9 Синтаксический разбор слева направо (LR). LR(0)-, SLR(1)-, LR(1)-, LALR(1)-грамматики. Решение задач. 6
10 Геометрия в алгоритмах. Алгоритм Грэхема. 4
11 Зачетное занятие 1
Планируемый результат: выполнение итоговой практической работы (2-3 задачи повышенного уровня сложности). Протокол и анализ выполнения зачетной работы.

Литература:
Андреева Е.В. Программирование – это так просто, программирование – это так сложно. – М.: МЦНМО, 2015. – 2-е изд., испр. и доп. – 184 с.
Гашков С.Б. Системы счисления и их применение. 2-е изд., испр. и доп. – М.: МЦНМО, 2012. – 68 с.: ил.
Окулов С.М. Абстрактные типы данных. – М.: БИНОМ. Лаборатория знаний, 2015. – 256 с.
Окулов С.М. Алгоритмы компьютерной арифметики. – М.: БИНОМ. Лаборатория знаний, 2015. – 288 с.
Окулов С.М. Основы программирования. – М.: БИНОМ. Лаборатория знаний 2015. – 336 с.: ил.
Окулов С.М. Программирование в алгоритмах. – М.: БИНОМ. Лаборатория знаний 2008. – 383 с.: ил.
Окулов С.М. Задачи по программированию. – М.: БИНОМ. Лаборатория знаний 2014. – 824 с.: ил.
Окулов С.М., Пестов О.А. Динамическое программирование. – М.: БИНОМ. Лаборатория знаний, 2015. – 296 с.
Окулов С.М., Пестов С.Ю. Алгоритмы обработки строк. – М.: БИНОМ. Лаборатория знаний. 2015. – 256 с.
Шень А. Программирование: теоремы и задачи. – М.: МЦНМО, 2014. – 296 с.: ил.
Яковлев И.В. Комбинаторика для олимпиадников. 2-е из. доп. – М.: МЦНМО, 2016. – 80 с.
Ященко И.В. Парадоксы теории множеств. – М.: МЦНМО, 2014. – 3-е изд., стер. – 40 с.: ил.