Оглавление Планируемые результаты изучения курса внеурочной деятельности «Олимпиадное программирование» 2
Содержание курса «Олимпиадное программирование» 5
Тематическое планирование курса «Олимпиадное программирование». 7
Планируемые результаты изучения курса внеурочной деятельности «Олимпиадное программирование»
Учащиеся должны достичь следующих результатов
личностные:
широкие познавательные интересы, инициатива и любознательность, мотивы познания и творчества; готовность и способность учащихся к саморазвитию и реализации творческого потенциала в предметно-продуктивной деятельности за счет развития их образного, алгоритмического и логического мышления;
целостное мировоззрение, соответствующее современному уровню развития науки и общества;
ответственное отношение к учению, готовность обучающихся к саморазвитию и самообразованию на основе мотивации к обучению и познанию, к осознанному построению индивидуальной траектории с учётом устойчивых познавательных интересов;
умение ясно, точно, грамотно излагать свои мысли в устной и письменной речи, понимать смысл поставленной задачи, выстраивать аргументацию, приводить примеры и контрпримеры;
креативность мышления, инициатива, находчивость, активность при решении алгоритмических задач;
готовность к повышению своего образовательного уровня и продолжению обучения с использованием средств и методов информатики и ИКТ;
интерес к информатике, стремление использовать полученные знания в процессе обучения другим предметам и в жизни;
способность увязать учебное содержание с собственным жизненным опытом и личными смыслами, понять значимость подготовки в области информатики и ИКТ в условиях развития информационного общества;
готовность к самостоятельным поступкам и действиям, принятию ответственности за их результаты; готовность к осуществлению индивидуальной и коллективной информационной деятельности;
способность к избирательному отношению к получаемой информации за счет умений ее анализа и критичного оценивания; ответственное отношение к информации с учетом правовых и этических аспектов ее распространения;
способность и готовность к принятию ценностей здорового образа жизни за счет знания основных гигиенических, эргономических и технических условий безопасной эксплуатации средств ИКТ.
метапредметные:
умение самостоятельно ставить цели, решать задачи разными способами и выбирать наиболее эффективные способы решения учебных и познавательных задач;
умение выдвигать гипотезы при решении учебных задач и понимать необходимость их проверки;
планирование – определение последовательности промежуточных целей с учетом конечного результата, разбиение задачи на подзадачи, разработка последовательности и структуры действий, необходимых для достижения цели при помощи фиксированного набора средств;
прогнозирование – предвосхищение результата;
контроль – интерпретация полученного результата, его соотнесение с имеющимися данными с целью установления соответствия или несоответствия (обнаружения ошибки);
коррекция – внесение необходимых дополнений и корректив в план действий в случае обнаружения ошибки;
оценка – осознание учащимся того, насколько качественно им решена учебно-познавательная задача;
владение основными универсальными умениями информационного характера: постановка и формулирование проблемы;
поиск и выделение необходимой информации, применение методов информационного поиска;
структурирование и визуализация информации; выбор наиболее эффективных способов решения задач в зависимости от конкретных условий;
самостоятельное создание алгоритмов деятельности при решении проблем творческого и поискового характера;
владение основами продуктивного взаимодействия и сотрудничества со сверстниками и взрослыми: умение правильно, четко и однозначно сформулировать мысль в понятной собеседнику форме;
использование коммуникационных технологий в учебной деятельности и повседневной жизни.
предметные:
осознание роли информатики в развитии России и мира;
формирование информационной и алгоритмической культуры;
формирование знаний об алгоритмических конструкциях, логических значениях и операциях;
знакомство с языком программирования и основными алгоритмическими структурами - линейной, условной и циклической;
развитие алгоритмического мышления, необходимого для профессиональной деятельности в современном обществе; развитие умений составить и записать алгоритм для конкретного исполнителя;
умение использовать термины «информация», «сообщение», «данные», «алгоритм», «программа». «инструкция»; понимание различий между употреблением этих терминов в обыденной речи и в программировании;
умение формализовать и структурировать информацию;
умение составлять линейные, разветвляющиеся и циклические алгоритмы управления исполнителями на языке программирования Python;
умение использовать логические значения, операции и выражения с ними;
умение формально выполнять алгоритмы, описанные с использованием конструкций ветвления (условные операторы) и повторения (циклы), вспомогательных алгоритмов;
умение создавать и выполнять программы для решения различных алгоритмических задач в среде IDLE;
Достижение личностных результатов и сформированность метапредметных и предметных умений оценивается на качественном уровне (без отметки).
В основе преподавания данного курса лежит системно-деятельностный подход, который обеспечивает:
- формирование готовности к саморазвитию и непрерывному образованию;
- овладение универсальными учебными действиями;
- активную учебно-познавательную деятельность учащихся;
- построение образовательного процесса с учётом индивидуальных возрастных, психологических и физиологических особенностей учащихся.
В результате учебной деятельности, для решения разнообразных учебно-познавательных и учебно-практических задач, у обучающихся будут формироваться и развиваться необходимые универсальные учебные действия и специальные учебные умения, что заложит основу успешной учебной деятельности в средней и старшей школе.
Программа курса "Олимпиадное программирование." для учащихся 7-9 классов рассчитана на 2 часа в неделю, всего 70 часов в течение года.
Содержание курса «Олимпиадное программирование»
Техника безопасности и правила поведения в компьютерном классе. (1 час)
Основные требования и правила поведения в компьютерном классе. Техника безопасности при работе с электрическими приборами и правила пожарной безопасности. Здоровьесберегающие технологии.
Язык программирования Python. ( 1 час)
История развития языков программирования. Компилируемые и интерпритируемые языки программирования, достоинства и недостатки. Установка Python 3+. Интерфейс среды программирования IDLE. Первая программа.
Операторы ввода-вывода. Оператор присваивания. Арифметические операции. (4 часа)
Операторы print() и input() и их параметры. Сохранение значений в переменных. Программируем дружественный пользовательский интерфейс. Данные, типы данных, оператор присваивания. Функции преобразования типов. Арифметические операции. Целочисленное деление и остаток от целочисленного деления. Отличие Питона от других ЯПВУ. Целочисленное деление с округлением вверх. Решение задач. Сайт дистанционной подготовки по информатике https://informatics.msk.ru/.
Ветвление. ( 6 часов)
Условная инструкция в языке Python. Простые логические выражения. Решение задач. Запись сложных условий в языке Python. Правила вычислений сложных логических выражений. Функции min() и max(). Пересечение отрезков. Олимпиадные формулировки задач на пересечение отрезков. Пересечение прямоугольников. Решение задач. Задачи на шахматной доске. Разные задачи на условный оператор.
Циклы. (4 часа)
Цикл с параметром for в языке Python. Цикл с предусловием while в языке Python. Инструкции управления циклом в языке Python ─ break и continue. Решение задач.
Строки. (2 часа)
Строки в языке Python. Срезы строк. Методы строк. Коды символов в языке Python.
Списки. (4 часа)
Списки в языке Python. Срезы списков. Методы split() и join() для списка строк в языке Python. Генераторы списков. Многомерные списки в Python. Генераторы таблиц. Решение задач.
Работа с текстовыми файлами. (2 часа)
Файловый ввод-вывод. Работа с текстовыми файлами. Решение задач.
Словари и множества. (2 часа)
Словари (ассоциативные массивы) и множества в Python. Решение задач.
Функции. (4 часа)
Функции. Локальные и глобальные переменные. Обмен данными. Рекурсия. Ханойские башни. Решение задач.
Простые числа. (4 часа)
Алгоритмы проверки числа на простоту. Решето Эратосфена. Разложение на множители.
Наибольший общий делитель. (2 часа)
Алгоритм Евклида. Расширенный алгоритм Евклида. Решение задач.
Квадратичные алгоритмы сортировки. (6 часов)
Сортировка пузырьком. Оптимизированный пузырёк. Сортировка методом выбора. Сортировка методом вставки. Синхронная сортировка массивов. Решение задач.
Линейные структуры данных. (6 часов)
Стек, очередь, дек. Правильная скобочная последовательность. Обратная польская нотация. Решение задач.
Быстрые алгоритмы сортировки. (4 часа)
Сортировка подсчетом. Сортировка слиянием. Быстрая сортировка Хоара. Стандартная сортировка в Python. Решение задач.
Двоичный поиск. (6 часов)
Двоичный поиск числа в упорядоченном массиве. Метод бисекции. Двоичный поиск по ответу. Два указателя. Решение задач.
Динамическое программирование. (8 часов)
Одномерное динамическое программирование. Количество способов. Наилучший способ. Двумерное динамическое программирование. Задача об укладке рюкзака. Алгоритм "укладки рюкзака". Решение задач.
Рекурсивный перебор. (2 часа)
Генерация всех подмножеств данного множества. Решение задач.
Комбинаторные задачи. (2 часа)
Решение комбинаторных задач.
Тематическое планирование курса «Олимпиадное программирование».
№ | Тема | | Количество часов |
| | | |
| | Всего | Теория | Практика | |
| | | | | |
1 | Техника безопасности и правила поведения в компьютерном классе. | 1 | 1 | | |
2 | Язык программирования Python. | 1 | 1 | | |
3 | Операторы ввода-вывода, присваивания. Типы данных. Целочисленная арифметика. | 4 | 2 | 2 | |
4 | Ветвление. | 6 | 2 | 4 | |
5 | Циклы. | 4 | 1 | 3 | |
6 | Строки. | 2 | 1 | 1 | |
7 | Списки. | 4 | 2 | 2 | |
8 | Работа с текстовыми файлами. | 2 | 1 | 1 | |
9 | Словари и множества. | 2 | 1 | 1 | |
10 | Функции. | 4 | 1 | 3 | |
11 | Простые числа. | 4 | 2 | 2 | |
12 | Наибольший общий делитель. | 2 | 1 | 1 | |
13 | Квадратичные алгоритмы сортировки. | 6 | 3 | 3 | |
14 | Линейные структуры данных. | 6 | 2 | 4 | |
15 | Быстрые алгоритмы сортировки. | 4 | 2 | 2 | |
16 | Двоичный поиск. | 6 | 3 | 3 | |
17 | Динамическое программирование. | 8 | 4 | 4 | |
18 | Рекурсивный перебор. | 2 | 1 | 1 | |
19 | Комбинаторные задачи. | 2 | 1 | 1 | |
| Итого: | 70 | 32 | 38 | |
8