Scientific journal
Modern problems of science and education
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 1,006

Касьянова Е.В., Касьянова С.Н.

В докладе представлен опыт преподавания курса информатики в старших классах с математическим уклоном. Речь идет об углубленной подготовке школьников по программированию с учетом их индивидуальных способностей и увлечений. При этом обучение в школе не дублирует университетские курсы по информатике и программированию, а лишь подводит школьников к вузовским программам.

В обсуждаемом курсе большое внимание уделяется изучению и составлению алгоритмов. Преподавание алгоритмизации учит гибкости мышления и закладывает важную базу для дальнейшего изучения программирования. В технологии преподавания, в основном, используется проблемный ("задачный") подход в обучении, при котором обучаемый не просто усваивает некоторое знание, а сам ищет пути к этому знанию.

Почему выбран этот подход? Учитывается психология одаренных детей. Им трудно пассивно усваивать «готовые» знания, которые преподаватель излагает при традиционном обучении. Творческие дети как к кроссвордам относятся к решению задач, к "разгадыванию" алгоритмов. Такие дети не любят решать однотипные задачи, поэтому здесь очень важен подбор задач. Им нужны интересные задачи, при решении которых они приобретают новые знания, знакомятся с новыми методами и новыми структурами данных. Набор задач должен, с одной стороны, предоставлять возможность ребенку проявлять смекалку, с другой стороны, требовать определенных знаний методов решения задач. И задача учителя превратить обучение в серию пусть небольших, но приятных побед, позволяющих школьникам овладеть техникой программирования и открыть для себя алгоритмы, методы и принципы решения задач на компьютере.

Мы знакомим ребят с базовыми алгоритмами и методами, которые понадобятся им при решении сложных задач, в том числе олимпиадных, такими, как, например:

  • аналитические вычисления (арифметика длинных чисел);
  • вычислительная геометрия;
  • динамические структуры данных;
  • методы поиска и сортировок;
  • методы решения переборных задач;
  • методы порождения комбинаторных объектов;
  • методы динамического программирования;
  • представление графов и деревьев;
  • обходы графов и деревьев;
  • алгоритмы нахождения кратчайших путей.

За время работы с одаренными детьми нами были собраны задачи повышенной сложности и подготовлен сборник задач с решениями [1].

В качестве учебного языка программирования мы используем в курсе язык Паскаль. Почему выбран Паскаль? Простота языка позволяет быстро его освоить и создавать алгоритмически сложные программы. В языке реализованы идеи структурного программирования, что делает программу наглядной, а развитые средства представления структур данных обеспечивают удобство работы как с числовой, так и с символьной информацией. Паскаль поставляется с очень удобной Интегрированной Инструментальной Оболочкой Borland Pascal. Кроме того, язык Паскаль используется в основном курсе программирования для студентов механико-математического факультета НГУ [2], куда идут многие из наших выпускников для продолжения обучения.

Но это не означает, что вся группа ребят работает на уроке только на Паскале. Кто-то пишет программы на Си++, кто-то ‑ на Dilphi. Знание других языков программирования приветствуется.

Данный метод преподавания программирования был апробирован в гимназии N 3 и в лицее N 130 Новосибирского Академгородка, показал неплохие результаты. Уже несколько лет наши ребята не только с завидной постоянностью побеждают на районных, городских и областных олимпиадах школьников по информатике и программированию, но и занимают призовые места на Всероссийских и Международных олимпиадах.

В частности, в текущем году они получили серебряную медаль на Международной олимпиаде школьников по информатике и диплом первой степени в 6-й Всероссийской командной олимпиаде школьников по информатике и программированию, а также в составе сборной команды школьников победили в 6-й Открытой Всесибирской олимпиаде по программированию им. И. Поттосина, в которой участвовало более 200 студенческих команд из МГУ, СПбУ, НГУ и других вузов.

 

СПИСОК ЛИТЕРАТУРЫ

1. Касьянова С.Н., Касьянова Е.В. Программирование для школьников: сборник задач повышенной сложности с решениями. ‑ Новосибирск. ‑ 2002. ‑ 51 С. ‑ (Препр. /РАН. Сиб. Отд-е. ИСИ; N 95).

2. Касьянов В.Н. Курс программирования на Паскале в заданиях и упражнениях. - Новосибирск: НГУ, 2001. - 448 С.