Статья "Подготовка выпускников 9 и 11 класса к решению задач по программированию"
статья по информатике и икт (9, 11 класс) на тему
В статье рассказывается о подготовке выпускников к ОГЭ и ЕГЭ по теме "Алгоритмизация. Программирование". Проанализированы задачи, даны рекомендации, на что надо обратить внимание детей. Приведены источники материалов, а также обобщен опыт использования презентаций в практической деятельности.
Скачать:
| Вложение | Размер |
|---|---|
| 23.6 КБ |
Предварительный просмотр:
Подготовка выпускников 9 и 11 класса к решению задач по программированию
Учитель информатики
144 лицея Санкт-Петербурга
Богачевой Г.В.
Контрольно-измерительные материалы ЕГЭ и ОГЭ по информатике почти непрерывно совершенствуются и усложняются, но, если выпускники 11-ых классов нашего лицея этот экзамен сдают более 10 лет, то девятиклассники в Санкт-Петербурге стали сдавать ОГЭ по информатике сравнительно недавно. Поэтому последние годы мы с коллегами особенно внимательно анализируем ошибки, допущенные на весенних диагностических работах в 9-ых классах, и разрабатываем презентации, направленные на подготовку ребят по самым сложным для них заданиям. Своей методической темой я выбрала анализ задач на программирование, разработку методики их решения и подготовки выпускников к экзамену, так как считаю эту тему актуальной. В базовом курсе информатики темы «Алгоритмизация и программирование» в программах, рассчитанных на 1 час в неделю (программа Семакина И.Г., Хеннера Е.К, программа Угриновича Н.Д), в 10-11 классах нет. Знания, полученные в основной школе, к моменту выпуска частично теряются. Именно поэтому задания на анализ предложенных программ, на программирование обязательно должны быть включены во все занятия, направленные на повторение, обобщение и подготовку к экзаменам. Актуально повторение и при подготовке ребят 9-го класса (например, по программе Босовой Л.Л. эта тема изучается в 8-ом классе).
Работу над темой я начала с обработки источников, среди которых были сборники заданий, в составлении которых участвовали специалисты Федерального института педагогических измерений и популярные сайты, на которых публикуются материалы по подготовке выпускников, а также материалы ЕГЭ и ОГЭ прошлых лет и демонстрационные версии ЕГЭ и ОГЭ. После анализа большого количества заданий можно сделать вывод, что ребят надо научить не только разрабатывать алгоритмы, но и читать и понимать готовые программы.
Задания в ОГЭ на программирование – это задания №6 (умение исполнить алгоритм для конкретного исполнителя с фиксированным набором команд), №8 (умение исполнить линейный алгоритм, записанный на алгоритмическом языке), №9 (умение исполнить простейший циклический алгоритм, записанный на алгоритмическом языке), №10 (умение исполнить циклический алгоритм обработки массива чисел, записанный на алгоритмическом языке), №14 (умение записать простой линейный алгоритм для формального исполнителя), а также №20 (умение написать короткий алгоритм в среде формального исполнителя (вариант задания 20.1) или на языке программирования (вариант задания 20.2). В ОГЭ больше всего заданий именно на эту тему. В этой статье я хочу рассмотреть подготовку к заданиям №№ 8, 9, 10 и 20_2, то есть работу на алгоритмическом языке, хотя на моём сайте (nsportal.ru/bog-gal) выложены презентации и по другим вопросам.
При подготовке к решению заданий №8 и 9 необходимо понимать, что такое переменная, знать основные операторы изучаемого языка (в нашем лицее – это Паскаль), а также знать и уметь трассировать программу – на экзамене все ребята волнуются, не всегда сразу понимают, что эта программа делает, а в процессе трассировки приходит понимание, какие действия повторяются, что будет в результате выполнения этой программы.
При подготовке к решению задания №20_2 обращаем внимание детей на то, что:
- числа не надо хранить в программе, к тому же мы не знаем, сколько чисел будет введено, поэтому отказываемся от массивов (в классическом Паскале нет динамических массивов - в описании необходимо указать число элементов массива).
- Если в задании указано, что программа получает на вход количество чисел в последовательности, а затем сами числа, то вначале вводим в переменную количество чисел, а затем организуем цикл - используем или цикл с параметром (for), или цикл с предусловием (while). Если количество чисел не задано, а есть признак окончания ввода, используем цикл с постусловием repeat (сначала вводим число, затем его анализируем).
- Необходимо знать операции mod – остаток от деления (if a mod 10 = 8) и div – деление нацело (x := x div 10), понимать, что условие (a mod 10 = 8) проверяет последнюю цифру в числе (10 с.с.), а условие (a mod 6 = 0) проверяет кратность переменной a на 6 (остаток от деления на 6 равен 0). Оператор x := x div 10 меняет значение переменной x, отбрасывая цифру младшего разряда ((10 с.с.).
- Знать, как считается количество (b := b +1 – в цикле к значению переменной прибавляем по 1) и сумма ( s := s + a – в цикле к старому значению переменной прибавляем очередное число и сохраняем в той же переменной).
- Уметь использовать сложные условия (if (a mod 10 =2) and (a mod 6 =0)), знать логические операции not, and, or; помнить, что простые условия в логическом выражении берутся в круглые скобки; знать приоритет логических операций. Можно использовать вложенные условные операторы, при этом надо помнить, что внутренний условный оператор целиком вкладывается во внешний (как матрёшка).
- Уметь сравнивать и находить в последовательности наибольшее или наименьшее число.
- Избегаем подсказок и пояснений в операторах вывода. Мы требуем их применение на уроках, но на экзамене их использование не обязательно.
При подготовке к решению заданий №20_2 и №10 необходимо повторить и научить легко узнавать типовые алгоритмы – поиск максимального элемента массива или последовательности чисел, поиск минимального элемента, определение суммы чисел, соответствующих определённым критериям, определение количества чисел, соответствующих условию. Дети должны понимать, чем отличаются индекс элемента массива и значение элемента массива, обращать внимание, поиск идёт во всем массиве или только среди части элементов, фиксировать, что именно выводится на экран.
Задания в ЕГЭ на программирование – это №6 (формальное исполнение алгоритма, записанного на естественном языке или умение создавать линейный алгоритм для формального исполнителя с ограниченным набором команд), №8 (знание основных конструкций языка программирования, понятия переменной, оператора присваивания), №11 (умение исполнить рекурсивный алгоритм), №14 (умение исполнить алгоритм для конкретного исполнителя с фиксированным набором команд), №19 (работа с массивами (заполнение, считывание, поиск, сортировка, массовые операции и др.), №20 (анализ алгоритма, содержащего цикл и ветвление), №21 (умение анализировать программу, использующую процедуры и функции), №22 (умение анализировать результат исполнения алгоритма), №24 (умение прочесть фрагмент программы на языке программирования и исправить допущенные ошибки), №25 (умение написать короткую (10–15строк) простую программу на языке программирования), №27 (умение создавать собственные программы (30–50 строк) для решения задач средней сложности)
Здесь сложнее написать, что необходимо учесть при подготовке к экзамену. Ученики должны научиться использовать в практике построения алгоритмов основные управляющие структуры: следование, ветвление, цикл; уметь разбивать задачу на подзадачи, применять метод последовательной детализации алгоритма. Разумеется, необходимо знать основные операторы языка программирования, типы переменных, что такое рекурсия, уметь использовать подпрограммы – процедуры и функции, уметь работать с массивами. Надо помнить, что для решения задачи №27 требуется написать эффективную по времени и по памяти программу.
Материалы для подготовки я беру с сайта Константина Юрьевича Полякова (kpolyakov.narod.ru), различных сайтов для учителей информатики ( videouroki.net, metod-kopilka.ru, uchportal.ru, zavuch.info, nsportal.ru, znanio.ru), с демонстрационных версий прошлых лет, c открытого банка заданий ФИПИ. Но большинство материалов по подготовке к экзаменам предназначено для индивидуального использования, мне же хотелось сделать презентации, которую я могла бы использовать для групповых занятий (через проектор) во время уроков, на занятиях по подготовке к ЕГЭ и ОГЭ,во время предэкзаменационных консультаций для повторения пройденного материала. Такие презентации я публикую на своём сайте nsportal.ru/bog-gal, а также на своей странице сайта лицея lyceum144.ru/lyceum/struktura-litseya/metodkabinet/kafedra-mif/bogacheva-galina-vladimirovna/.
В процессе работы над темой я веду блог по адресу http://galinabogacheva.livejournal.com. Работа с блогом ведётся следующим образом – я публикую экзаменационные материалы несколько раз в месяц. Ребята читают эти материалы дома, на занятия приходят с вопросами. Так как все задачи из блога были собраны в презентации, то достаточно оперативно можно найти нужную задачу и объяснить её ещё раз. Решаются аналогичные задачи. На предэкзаменационной консультации ещё раз просматриваем все задачи, чтобы вспомнить весь пройденный материал. Апробация такой формы работы показала её эффективность – за последние годы все выпускники нашего лицея, выбравшие информатику, сдали ЕГЭ с результатом лучше, чем средний балл по Санкт-Петербургу.
По теме: методические разработки, презентации и конспекты
ПРОГРАММА Элективного курса по алгебре 9 класс Тема: «Решение задач повышенной сложности»
Количество часов - 34.Основная цель электива- это решение задач повышенной сложности и подготовка учащихся к ГИА по алгебре. Программа содержит пояснительную записку,календарно- тематическое планирова...
Развитие математических способностей учащихся 5 – 6 классов путем решения задач на проценты.
В программе курса математики 5 – 6 классов большое место уделяется решению задач на проценты. Обучение решению этих задач всегда рассматривалось как необходимое условие ...

обучающая программа по теме "Алгоритм решения задачи линейного программирования"
материал предназначен для студентов повышенного уровня. в программе рассмотрен алгоритм составления базисного и опорного плпна разными методами и нахождение оптимального решения...

Решение задач линейного программирования графическим методом
Презентация к занятию "Решение задач линейного программирования графическим методом"...

Элективный курс «Геометрический метод решения задач линейного программирования»
Для владения и управления современной техникой и технологией нужна серьезная общеобразовательная подготовка, включающая в качестве непременного компонента активные знания по математике.Программа...

Интегрированный урок математики и информатики "МЕТОДЫ РЕШЕНИЯ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ"
Комбинированный урок - защита проекта и изучение новых знаний, где рассматриваются методы решения задач оптимизации....

«Решение задач в программировании роботов Lego с наименьшими энергозатратами»_compressed
Наборы LEGO Mindstorms Education EV3 обладают широчайшим учебным потенциалом и могут быть использованы на большинстве технических предметах для повышения эффективности учебного процесса и уровня мотив...
