Пояснительная записка Программа рассчитана на изучение материала в течение двух лет обучения (10-11 класс). Программа курса разработана в соответствии с требованиями ФГОС среднего общего образования, Концепции духовнонравственного развития и воспитания личности гражданина России, на основе основной образовательной программы основного общего образования МАОУ «СОШ №9» ГО Краснотурьинска, в соответствии с содержанием Кодификатора требований к уровню подготовки выпускников образовательных организаций для проведения единого государственного экзамена. Учебные занятия включают в себя лекции и практические занятия. Основной тип - комбинированный урок. Каждая тема курса начинается с постановки задачи. Теоретический материал излагается в форме минилекций. После изучения теоретического материала выполняются задания для активного обучения, практические задания для закрепления. Формы методы контроля: решение практических задач программирования (практическое занятие), занятие – соревнование, самостоятельная работа. Основным дидактическим средством для предлагаемого курса являются тексты рассматриваемых типов задач, которые могут быть выбраны из различных источников, но в большей степени в числе для подготовки к единому государственному экзамену. Практические занятия составляют важную часть теоретической и профессиональной подготовки. Они направлены на формирование практических навыков и умений. Практические занятия создают оптимальные дидактические условия для деятельностного освоения обучающимися содержания и методологии изучаемой дисциплины, использование специального оборудования, технических средств. Ведущей дидактической целью практических занятий является формирование практических умений – профессиональных (выполнять определѐнные действия, операции, необходимые в последующем в профессиональной деятельности). Python - один из самых универсальных языков программирования. Python входит в топ-10 самых востребованных языков программирования. Самые прогрессивные IT-компании, такие как, Google, Pixar, Youtube, Instagram, NASA, Intel, Pinterest используют именно данный язык программирования. Python — высокоуровневый язык общего назначения. Это значит, что такой язык быстр и удобен в работе, а программы, написанные на нѐм, просты для понимания программистами. Обычно его используют для вебразработки, анализа данных, написания скриптов и игр. Сильные стороны языка, такие как, простота в освоении, низкий порог входа, читабельность, универсальность, большое и активное сообщество, позволяют начать изучать его с достаточно раннего возраста. Также Python часто советуют в качестве первого языка начинающим программистам. Такая популярность вызвана универсальностью и простотой изучения языка — он становится главным ориентиром новичков. Чтобы работать с ним, необязательно быть продвинутым программистом. На рынке всѐ ещѐ чувствуется недостаток специалистов по разработке программного обеспечения. Поэтому количество открытых вакансий на должность разработчика — показатель востребованности специалистов. В 2022 году Java, Python, JavaScript и C++ входили в число популярных языков, требуемых работодателями. Особая роль курса заключается в формировании алгоритмического мышления ученика. Задача школы популяризировать и актуализировать среди обучающихся необходимость знания программирования в жизни, а также формирование IT-культуры обучающихся, повышение их компьютерной грамотности. Решение задач программирования способствует раскрытию и расширению прикладного аспекта изучаемого материала. Обучающиеся, сдающие экзамен по информатике и ИКТ, планируют связать дальнейшую деятельность с IT-сферой, с программированием, разработкой различных продуктов. Поэтому знание такого универсального языка, ка Python, необходимо для будущего выпускника школы и абитуриента университета. Практически все задачи единого государственного экзамена решаются с использованием языка Python, поэтому изучение данного языка, значительно облегчит подготовку обучающихся к экзамену, и будет способствовать успешному результату сдачи экзамена. Программа рассчитана на 68 часов, с учебной нагрузкой 1 час в неделю в 10 и 11 классе. Цель курса : способствовать формированию и развитию у обучающихся навыков решения задач программирования, анализа и систематизации полученных ранее знаний, развитие алгоритмического мышления и культуры обучающихся, повышение интереса к изучению программирования, информатики и информационно-коммуникационных технологий, способности к личному самоопределению и самореализации. Задачи курса: 1. расширение и углубление представления обучающихся о приемах и методах решения алгоритмических задач; 2. формирование и развитие аналитического, логического мышления при проектировании решения задач у обучающихся; 3. развитие самостоятельно анализировать и решать задачи по образцу и в незнакомой ситуации; 4. развитие самостоятельно анализировать и решать алгоритмические задачи; 5. развитие математических способностей, повышение уровня математической грамотности; 6. развитие математической интуиции, нахождение оптимального способа решения задач; 7. формирование навыка работы с дополнительной литературой, использования различных Интернет-ресурсов; 8. формирование навыков соблюдения единых требований к правилам решения задач, включенных в основной государственный экзамен и единый государственный экзамен. 9. формирование навыков решения олимпиадных задач программирования. Результаты освоения курса Личностные результаты: 1. начало профессионального самоопределения, ознакомление с миром профессий, связанных с информатикой. 2. умение грамотно, ясно и точно излагать свои мысли в устной и письменной форме, понимать смысл поставленной задачи, выстраивать аргументацию, приводить; 3. умение грамотно структурировать данные, оформлять решение алгоритмической задачи; 4. развитие критического мышления, умение распознавать логически некорректные высказывания; 5. креативное мышление, инициатива, находчивость, активность при решении математических задач; 6. умение контролировать процесс и результат учебной математической и алгоритмической деятельности; 7. способность к восприятию математических и алгоритмических объектов, задач, решений, рассуждений; Метапредметные результаты: 1. осмысленно читать и воспринимать на слух текст задания; 2. уметь извлекать и анализировать информацию, полученную из текста; 3. уметь критически оценивать данную информацию; 4. уметь читать таблицы, блок-схемы, условные обозначения, программу, написанную на языке программирования, а также на алгоритмическом языке. 5. иметь представления об идеях и о методах математики как об универсальном языке науки и техники, о средстве моделирования явлений и процессов; 6. иметь представления об идеях и о методах программирования, о средствах моделирования на нем; 7. уметь планировать свою деятельность, ставить задачи, находить пути их решения; 8. уметь видеть математическую задачу в контексте проблемной ситуации в задачах программирования; 9. уметь находить в различных источниках информацию, необходимую для решения проблем, и представлять ее в понятной форме; принимать решение в условиях неполной и избыточной, точной и вероятностной информации; 10. уметь выдвигать гипотезы при решении учебных задач и понимать необходимость их проверки; умение применять индуктивные и дедуктивные способы рассуждений, видеть различные стратегии решения задач; 11. уметь действовать в соответствии с предложенным алгоритмом; 12. уметь самостоятельно ставить цели, выбирать и создавать алгоритмы для решения учебных проблем; 13. уметь планировать и осуществлять деятельность, направленную на решение задач исследовательского характера; Предметные результаты: знать/понимать: • этапы решения задачи на компьютере; • типы данных; • базовые конструкции изучаемых языков программирования; • принципы структурного и модульного программирования; • принципы объектно-ориентированного программирования; • основы создания приложений в Python; • инструментальные средства Python. уметь: • работать в среде программирования; • реализовывать построенные алгоритмы в виде программ на конкретном языке программирования; • настраивать рабочую среду Python. 2. Содержание рабочей программы № Тема 1. Язык программирован ия Python. Введение. 2. Реализация вычислений и ветвлений. Виды учебной деятельности Знать основные конструкции языка программирования, понятия переменной, оператора присваивания, типы переменных, переводить число в строку, строковый тип в числовой Знать математические операторы языка Python, их синтаксис, иметь представление о процессе исполнения каждого из операторов, знать принципиальные отличия между формальными, локальными и глобальными переменными. Знать логический тип данных, логические Количест во часов 5 12 3. Реализация циклических, вспомогательны х алгоритмов. 4. Функции. Рекурсия 5. Встроенные модули 6. Позиционные системы счисления выражения и операторы, сложные условные выражения (логические операции). Уметь реализовывать ветвления в языке Python. знать основные операторы языка Python, их синтаксис, иметь представление о процессе исполнения каждого из операторов, уметь разрабатывать программы обработки числовой и символьной информации, уметь разрабатывать программы (линейные, разветвляющиеся и с циклами), иметь представление о значении полноценных процедур и функций для структурно-ориентированного языка высокого уровня, знать правила описания процедур и функций в Python и построение вызова процедуры, знать область действия описаний в процедурах, иметь представление о рекурсии, знать ее реализацию на Python, владеть основными приемами формирования процедуры и функции знать некоторые встроенные модули, в том числе кэширования данных, использование которых позволяет решать сложные олимпиадные задачи. Знать отличия между функциями некоторых модулей, таких как product и permutation знать основные операторы языка Python, их синтаксис, иметь представление о процессе исполнения каждого из операторов, уметь разрабатывать программы обработки числовой и символьной информации, уметь разрабатывать программы. Уметь переводить числа из одной системы счисления в другую в ручную и посредством языка программирования, находить количество требуемых заданием цифр в числе любой системы счисления, проводить различные арифметические операции с числами в различных системах счисления 17 7 10 9 9. Решение задач повышенной сложности знать основные операторы языка Python, 8 их синтаксис, иметь представление о процессе исполнения каждого из операторов, уметь разрабатывать программы обработки числовой и символьной информации, уметь разрабатывать программы . уметь решать задачи единого государственного экзамена, используя знания, умения, навыки, полученные ранее Календарно-тематическое планирование 10 класс № п/п 1 Название раздела, темы Язык программирования Python. Введение. Ввод и вывод данных Всего часов 5 1 1. 1 2. Числа. Арифметические операции. Основные операторы. 1 3. Числа. Арифметические операции. Основные операторы. 1 4. Строки. Операции со строками. Основные операторы. 1 5. Строки. Операции со строками. Основные операторы. 12 1 6. Реализация вычислений и ветвлений. Условный алгоритм. Полное и неполное ветвление. 1 7. Условный алгоритм. Полное и неполное ветвление. Логические операнды 1 2 8. Дата проведения План. Факт 1 9. Решение задач с использованием логических операндов 1 10. Решение задач с использованием логических операндов Решение задач с использованием all 1 1 12. Решение логических задач с использованием Python (задание 2) 1 13. Решение логических задач с использованием Python (задание 2) 1 14. Решение логических задач с использованием Python (задание 15) 1 15. Решение логических задач с использованием Python (задание 15) 1 16. Решение логических задач с использованием Python (задание 15) 1 17. Решение логических задач с использованием Python (задание 15) Реализация циклических, вспомогательных алгоритмов. Цикл for 17 Цикл for 1 Цикл while 1 Цикл while 1 Инструкции break, continue,ветвь else в циклах 1 11. 3 1 18. 19. 20. 21. 22. Создание простой программы 23. исполнителя с помощью языка программирования Python (задание 5) Создание простой программы 24. исполнителя с помощью языка программирования Python (задание 5) Решение задач на анализ алгоритмов, 25. содержащих цикл и ветвление (задание 6) 1 Решение задач на анализ алгоритмов, 26. содержащих цикл и ветвление (задание 6) 1 Решение задач на анализ алгоритмов, содержащих цикл и ветвление (задание 22) Решение задач на анализ алгоритмов, содержащих цикл и ветвление (задание 22) Решение задач на анализ алгоритмов, содержащих цикл и ветвление (задание 22) Решение задач на анализ алгоритмов, содержащих цикл и ветвление (задание 22) Решение задач на анализ алгоритмов, содержащих цикл и ветвление (задание 22) Решение задач на исполнение алгоритма для конкретного исполнителя с определенным набором команд посредством языка программирования Python (задание 12) Решение задач на исполнение алгоритма для конкретного исполнителя с определенным набором команд посредством языка программирования Python (задание 12) Решение задач на исполнение алгоритма для конкретного исполнителя с определенным набором команд посредством языка программирования Python (задание 12) 1 27. 28. 29. 30. 31. 32. 33 34 11 класс 1 1 1 1 1 1 1 1 1 № п/п 1 Название раздела, темы Функции. Рекурсия Определение функций, инструкция return Всего часов 7 1 1. 2 3 4 5 6 7 2 8 9 10 11 12 13 14 15 16 17 3 18 19 20 Описание переменных в функции, локальные и глобальные переменные Аргументы функции Решение задач с использованием рекуррентных функций (задание 16) Решение задач с использованием рекуррентных функций (задание 16) Решение задач с использованием рекуррентных функций (задание 16) Решение задач с использованием рекуррентных функций (задание 16) Встроенные модули None – эквивалент null в python Модуль functools Решение задач Модуль Lru_cache Модуль itertools в Python Функция product() модуля itertools в Python Функция permutations() модуля itertools в Python Знакомство с методом join Решение задач комбинаторики посредством языка программирования Python (задание 8) Решение задач комбинаторики посредством языка программирования Python (задание 8) Позиционные системы счисления Перевод чисел из десятичной системы счисления в двоичную, восьмеричную, шестнадцатеричную и n-ю системы счисления Перевод чисел из двоичной, восьмеричной, шестнадцатеричной и n-й системы счисления в десятичную систему счисления Перевод из двоичной в четверичную, 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 9 1 1 1 Дата проведения План. Факт 21 22 23 24 25 26 4 27 28 29 30 31 32 33 34 восьмеричной, шестнадцатеричную Перевод чисел из десятичной системы счисления в двоичную, восьмеричную, шестнадцатеричную и n-ю системы счисления средствами языка программирования Python Перевод чисел из двоичной, восьмеричной, шестнадцатеричной и n-й системы счисления в десятичную систему счисления средствами языка программирования Python Перевод из n-й системы счисления в k-ю средствами языка программирования Python Решение задач (задание 14) Решение задач (задание 14) Решение задач (задание 14) Решение задач повышенной сложности Решение задач на составление алгоритмов обработки числовой последовательности с помощью языка программирования Python (задние 17) Решение задач с использованием циклов и ветвлений с помощью языка программирования Python (задние 23) Создание программ для обработки символьной информации на языке программирования Python (задние 24) Создание программ для обработки целочисленной информации на языке программирования Python (задние 25) Создание программ для обработки целочисленной информации на языке программирования Python с использованием сортировки (задние 26) Создание программ для обработки целочисленной информации на языке программирования Python (задние 26) Создание программ для обработки целочисленной информации на языке программирования Python с использованием сортировки (задние 27) Создание программ для обработки целочисленной информации на языке 1 1 1 1 1 1 8 1 1 1 1 1 1 1 1 программирования Python с использованием сортировки (задние 27) Список учебно-методической литературы 1. А.М. Нигмедзянова, Е.А. Ефремова. Решение задач программирования для подготовки к ЕГЭ по информатике на языке PYTHON. Учебно-методическое пособие. 2019 2. Г.Россум, Ф.Л.Дж.Дрейк, Д.С. Откидач и др. Язык программирования Python. 2001 3. Д.Мусин. Самоучитель Python. Выпуск 0.2. 2017 4. С.К. Буйначев, Н.Ю. Боклаг. Основы программирования на языке Python. Учебное пособие. 2014 5. М.Саммерфилд. Программирование на Python 3. Подробное руководство. 2009 6. Кодификатор проверяемых требований к результатам освоения основной образовательной программы среднего общего образования и элементов содержания для проведения единого государственного экзамена по информатике. ФИПИ. 2022-2023 7. Спецификация контрольных измерительных материалов для проведения в 2022 году единого государственного экзамена по информатике. ФИПИ. 2022-2023