12+  Свидетельство СМИ ЭЛ № ФС 77 - 70917
Лицензия на образовательную деятельность №0001058
Пользовательское соглашение     Контактная и правовая информация
 
Педагогическое сообщество
УРОК.РФУРОК
 
Материал опубликовала
Бетехтина Татьяна Евгеньевна61
Россия, Мордовия респ., Рузаевка
Материал размещён в группе «Информатика»

Бетехтина Татьяна Евгеньевна

МБОУ «СОШ №8» Рузаевского муниципального района Республики Мордовия, учитель математики и информатики

Подготовка младших школьников к олимпиадам по программированию


Для организации подготовки обучающихся к олимпиадам по программированию мною разработана программа элективного курса по информатике «Юный программист. Решение олимпиадных задач по информатике». Элективный курс ориентирован на обучающихся 5-6х классов, обладающих повышенной мотивацией к изучению информатики, и изучение языка программирования PascalABC.NET.

Программа разработана с учетом использования книги серии «Развитие интеллекта учащихся» Станислава Михайловича Окулова «Основы программирования».

В серии «Развитие интеллекта школьников» данного автора так же вышли «Программирование в алгоритмах», «Алгоритмы компьютерной арифметики», «Динамическое программирование» и др.

Для начинающих изучать программирование с нуля подходит книга «Основы программирования», остальные предполагают наличие знаний по программированию. В книге рассмотрены фундаментальные положения программирования: основные управляющие конструкции, элементы структуризации программ - процедуры и функции, массивы, как фундаментальная структура данных, упорядочение (сортировка) как основа эффективной работы с любыми данными, наконец, перебор вариантов, как универсальная схема компьютерного решения задач. Алгоритмические конструкции и примеры программ в книге даются на языке Pascal.

Занятия мною проводятся во внеурочное время с группой обучающихся одинаковой подготовленности. Основной методический принцип построения занятий – все познается через труд, через преодоление ошибок (собственных), через процесс решения задач. Это принцип определяет структуру занятий:

1. Вводная часть.

2. Экспериментальный раздел занятия.

3. Выполнение самостоятельной работы.

Конкретизирую перечисленные этапы на примере занятия №1 «Первая программа».

1. В вводной части занятия обучающиеся знакомятся со средой программирования PascalABC.NET. В рабочем окне редактора программы набирают текст первой программы – вычисления произведения двух целых чисел. Учитель поясняет текст программы, объясняет смысл терминов. Выполняется запуск программы. Тестирование, сохранение программы.

Program My;

Var a,b,c: integer;

Begin

Writeln('Введите два числа через пробел');

Readln (a,b);

c:=a*b;

Writeln('Их произведение равно ', c);

End.

2. На втором этапе проводятся эксперименты с заготовками решений задач: задания на модификацию готовых программ, в соответствии с измененным условием задачи, задания на исправление ошибок в готовых программах, задания на оценку возможных результатов работы программы.

Задание: Введите числа при работе программы, например 1000000 и 2000000. Убедитесь, что у вас получается неправдоподобный результат. Найдите экспериментальным путем такой интервал значений переменных a и b, при котором результат умножения правильный. Найдите и изучите в справочном разделе программы PascalABC.NET материал о диапазоне переменных целого типа.

3. Далее учащиеся работают самостоятельно.

Задание: Измените программу для нахождения суммы (разности) двух чисел. Измените программу для нахождения частного двух чисел. Найдите и изучите в справочном разделе программы PascalABC.NET материал о вещественном типе данных.


Для каждого занятия готовлю для обучающихся раздаточный материал, содержащий теорию, типовые задачи, задания для экспериментов и задачи для самостоятельной работы. Далее для закрепления материала и тренировки использую материалы сайта «Школа программиста» (acmp.ru), который разработан в Красноярском краевом Дворце пионеров при поддержке Регионального координационного центра проекта «Информатизация системы образования». Сайт посвящен решению задач по олимпиадному программированию в режиме on-line и оснащен встроенной проверяющей системой, использование которой позволяет обучающимся проверить правильность своего решения.

Я использую данный сайт, потому что здесь большая база задач для начинающих программистов. Задачи с сайта acmp.ru обучающиеся решают самостоятельно, если возникают затруднения, то разбираем вместе. Но как правило, ребята справляются сами. Обязательно сравниваем разные решения одной задачи, обсуждаем, находим оптимальное решение. Детям такой вид работы очень нравится, это соревнование – кто быстрее справится с задачей. Приведу в таблице примеры задач с сайта acmp.ru, которые можно использовать для обучающихся 5-6 классов.


Задачи для начинающих

ID

Задача

Сложность

Тема

0001

A+B

2%

Линейные алгоритмы

0004

Игра

4%

Линейные алгоритмы

0033

Два бандита

4%

Линейные алгоритмы

0092

Журавлики

7%

Линейные алгоритмы

0108

Неглухой телефон

1%

Линейные алгоритмы

0052

Счастливый билет

12%

Целочисленная арифметика

0003

Пятью пять – двадцать пять!

8%

Разветвляющиеся алгоритмы

0008

Арифметика

5%

Разветвляющиеся алгоритмы

0021

Зарплата

4%

Разветвляющиеся алгоритмы

0025

Больше - меньше

3%

Разветвляющиеся алгоритмы

0952

В автобусе

18%

Разветвляющиеся алгоритмы

0002

Сумма

19%

Циклические алгоритмы

0043

Нули

16%

Циклические алгоритмы

0081

Арбузы

14%

Циклические алгоритмы

0106

Монетки

8%

Циклические алгоритмы

0022

Единицы

16%

Циклические алгоритмы

0053

Раскраска таблицы умножения

22%

Циклические алгоритмы

0063

Загадка

18%

Циклические алгоритмы

0328

Точки на костях домино

25%

Циклические алгоритмы

0156

Шахматы-2

46%

Циклические алгоритмы

0149

Разворот

9%

Массивы

0005

Статистика

15%

Массивы

0039

Волосатый бизнес

32%

Массивы

0006

Шахматы

23%

Строки

0043

Нули

16%

Строки

0062

Клетки

15%

Строки

0047

Наилучший делитель

26%

Функции и Процедуры

0064

Простой ряд

27%

Функции и Процедуры

0281

Игра с монеткой

39%

Функции и Процедуры


Помимо сайта «Школа программиста» использую для тренировки сайт «Codeforces». В основном пока для разбора задач, прошедших туров Всероссийской Олимпиады Школьников по информатике (муниципальный тур, республиканский тур). Задачи на этом сайте на порядок сложнее, чем на сайте «Школа программистов».

Планы на будущее: изучение следующих в серии «Развитие интеллекта школьников» книг: динамическое программирование, работа со строками и т.п.


3


Опубликовано в группе «Информатика»


Комментарии (0)

Чтобы написать комментарий необходимо авторизоваться.