© МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ Приложение № 28 Утверждена в составе ООП СОО Приказ МАОУ Гимназии № 86 от 28.08.2023 № 3/О РАБОЧАЯ ПРОГРАММА ЭЛЕКТИВНОГО КУРСА «ПРОГРАММИРОВАНИЕ» (предметная область «Математика и информатика») 10-11 классы © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ РАЗДЕЛ 1. ПЛАНИРУЕМЫЕ РЕЗУЛЬТАТЫ Личностные результаты: 1. российская гражданская идентичность, патриотизм, уважение к своему народу, чувства ответственности перед Родиной, гордости за свой край, свою Родину, прошлое и настоящее многонационального народа России, уважение государственных символов (герб, флаг, гимн); 2. гражданская позиция как активного и ответственного члена российского общества, осознающего свои конституционные права и обязанности, уважающего закон и правопорядок, обладающего чувством собственного достоинства, осознанно принимающего традиционные национальные и общечеловеческие гуманистические и демократические ценности; 3. готовность к служению Отечеству, его защите; 4. сформированность мировоззрения, соответствующего современному уровню развития науки и общественной практики, основанного на диалоге культур, а также различных форм общественного сознания, осознание своего места в поликультурном мире; 5. сформированность основ саморазвития и самовоспитания в соответствии с общечеловеческими ценностями и идеалами гражданского общества; готовность и способность к самостоятельной, творческой и ответственной деятельности; 6. толерантное сознание и поведение в поликультурном мире, готовность и способность вести диалог с другими людьми, достигать в нем взаимопонимания, находить общие цели и сотрудничать для их достижения, способность противостоять идеологии экстремизма, национализма, ксенофобии, дискриминации по социальным, религиозным, расовым, национальным признакам и другим негативным социальным явлениям; 7. навыки сотрудничества со сверстниками, детьми младшего возраста, взрослыми в образовательной, общественно полезной, учебно-исследовательской, проектной и других видах деятельности; 8. нравственное сознание и поведение на основе усвоения общечеловеческих ценностей; 9. готовность и способность к образованию, в том числе самообразованию, на протяжении всей жизни; сознательное отношение к непрерывному образованию как условию успешной профессиональной и общественной деятельности; 10. эстетическое отношение к миру, включая эстетику быта, научного и технического творчества, спорта, общественных отношений; 11. принятие и реализацию ценностей здорового и безопасного образа жизни, потребности в физическом самосовершенствовании, занятиях спортивно-оздоровительной деятельностью, неприятие вредных привычек: курения, употребления алкоголя, наркотиков; 12. бережное, ответственное и компетентное отношение к физическому и психологическому здоровью, как собственному, так и других людей, умение оказывать первую помощь; 13. осознанный выбор будущей профессии и возможностей реализации собственных жизненных планов; отношение к профессиональной деятельности как возможности участия в решении личных, общественных, государственных, общенациональных проблем; 14. сформированность экологического мышления, понимания влияния социальноэкономических процессов на состояние природной и социальной среды; приобретение опыта эколого-направленной деятельности; © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ 15. ответственное отношение к созданию семьи на основе осознанного принятия ценностей семейной жизни. Метапредметные результаты: 1. умение самостоятельно определять цели деятельности и составлять планы деятельности; самостоятельно осуществлять, контролировать и корректировать деятельность; использовать все возможные ресурсы для достижения поставленных целей и реализации планов деятельности; выбирать успешные стратегии в различных ситуациях; 2. умение продуктивно общаться и взаимодействовать в процессе совместной деятельности, учитывать позиции других участников деятельности, эффективно разрешать конфликты; 3. владение навыками познавательной, учебно-исследовательской и проектной деятельности, навыками разрешения проблем; способность и готовность к самостоятельному поиску методов решения практических задач, применению различных методов познания; 4. готовность и способность к самостоятельной информационно-познавательной деятельности, владение навыками получения необходимой информации из словарей разных типов, умение ориентироваться в различных источниках информации, критически оценивать и интерпретировать информацию, получаемую из различных источников; 5. умение использовать средства информационных и коммуникационных технологий (далее - ИКТ) в решении когнитивных, коммуникативных и организационных задач с соблюдением требований эргономики, техники безопасности, гигиены, ресурсосбережения, правовых и этических норм, норм информационной безопасности; 6. умение определять назначение и функции различных социальных институтов; 7. умение самостоятельно оценивать и принимать решения, определяющие стратегию поведения, с учетом гражданских и нравственных ценностей; 8. владение языковыми средствами - умение ясно, логично и точно излагать свою точку зрения, использовать адекватные языковые средства; 9. владение навыками познавательной рефлексии как осознания совершаемых действий и мыслительных процессов, их результатов и оснований, границ своего знания и незнания, новых познавательных задач и средств их достижения. 1. Регулятивные универсальные учебные действия Выпускник научится: самостоятельно определять цели, задавать параметры и критерии, по которым можно определить, что цель достигнута; оценивать возможные последствия достижения поставленной цели в деятельности, собственной жизни и жизни окружающих людей, основываясь на соображениях этики и морали; ставить и формулировать собственные задачи в образовательной деятельности и жизненных ситуациях; оценивать ресурсы, в том числе время и другие нематериальные ресурсы, необходимые для достижения поставленной цели; выбирать путь достижения цели, планировать решение поставленных задач, оптимизируя материальные и нематериальные затраты; организовывать эффективный поиск ресурсов, необходимых для достижения поставленной цели; © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ сопоставлять полученный результат деятельности с поставленной заранее целью. 2. Познавательные универсальные учебные действия Выпускник научится: искать и находить обобщенные способы решения задач, в том числе, осуществлять развернутый информационный поиск и ставить на его основе новые (учебные и познавательные) задачи; критически оценивать и интерпретировать информацию с разных позиций, распознавать и фиксировать противоречия в информационных источниках; использовать различные модельно-схематические средства для представления существенных связей и отношений, а также противоречий, выявленных в информационных источниках; находить и приводить критические аргументы в отношении действий и суждений другого; спокойно и разумно относиться к критическим замечаниям в отношении собственного суждения, рассматривать их как ресурс собственного развития; выходить за рамки учебного предмета и осуществлять целенаправленный поиск возможностей для широкого переноса средств и способов действия; выстраивать индивидуальную образовательную траекторию, учитывая ограничения со стороны других участников и ресурсные ограничения; менять и удерживать разные позиции в познавательной деятельности. 3. Коммуникативные универсальные учебные действия Выпускник научится: осуществлять деловую коммуникацию как со сверстниками, так и со взрослыми (как внутри образовательной организации, так и за ее пределами), подбирать партнеров для деловой коммуникации исходя из соображений результативности взаимодействия, а не личных симпатий; при осуществлении групповой работы быть как руководителем, так и членом команды в разных ролях (генератор идей, критик, исполнитель, выступающий, эксперт и т.д.); координировать и выполнять работу в условиях реального, виртуального и комбинированного взаимодействия; развернуто, логично и точно излагать свою точку зрения с использованием адекватных (устных и письменных) языковых средств; распознавать конфликтогенные ситуации и предотвращать конфликты до их активной фазы, выстраивать деловую и образовательную коммуникацию, избегая личностных оценочных суждений. Предметные результаты Требования к результатам освоения ООП ООО (ФГОС ООО) Планируемые результаты освоения учебного предмета, курса (уточнение и конкретизация) 1. сформированность представлений о роли информации и связанных с ней процессов в окружающем мире; 2. владение навыками алгоритмического Выпускник научится: - понимать и использовать основные понятия, связанные со сложностью вычислений (время работы и размер © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ мышления и понимание необходимости формального описания алгоритмов; 3. владение умением понимать программы, написанные на выбранном для изучения универсальном алгоритмическом языке высокого уровня; знанием основных конструкций программирования; умением анализировать алгоритмы с использованием таблиц; 4. владение стандартными приемами написания на алгоритмическом языке программы для решения стандартной задачи с использованием основных конструкций программирования и отладки таких программ; использование готовых прикладных компьютерных программ по выбранной специализации; 5. сформированность представлений о компьютерно-математических моделях и необходимости анализа соответствия модели и моделируемого объекта (процесса); о способах хранения и простейшей обработке данных; понятия о базах данных и средствах доступа к ним, умений работать с ними; 6. владение компьютерными средствами представления и анализа данных; 7. сформированность базовых навыков и умений по соблюдению требований техники безопасности, гигиены и ресурсосбережения при работе со средствами информатизации; понимания основ правовых аспектов использования компьютерных программ и работы в Интернете. 8. владение системой базовых знаний, отражающих вклад информатики в формирование современной научной картины мира; 9. овладение понятием сложности алгоритма, знание основных алгоритмов обработки числовой и текстовой информации, алгоритмов поиска и сортировки; 10. владение универсальным языком программирования высокого уровня (по выбору), представлениями о базовых типах данных и структурах данных; умением используемой памяти при заданных исходных данных; асимптотическая сложность алгоритма в зависимости от размера исходных данных); определять сложность изучаемых в курсе базовых алгоритмов; - анализировать предложенный алгоритм, например, определять, какие результаты возможны при заданном множестве исходных значений и при каких исходных значениях возможно получение указанных результатов; - создавать, анализировать и реализовывать в виде программ базовые алгоритмы, связанные с анализом элементарных функций (в том числе приближенных вычислений), записью чисел в позиционной системе счисления, делимостью целых чисел; линейной обработкой последовательностей и массивов чисел (в том числе алгоритмы сортировки), анализом строк, а также рекурсивные алгоритмы; - применять метод сохранения промежуточных результатов (метод динамического программирования) для создания полиномиальных (не переборных) алгоритмов решения различных задач; примеры: поиск минимального пути в ориентированном ациклическом графе, подсчет количества путей; - создавать собственные алгоритмы для решения прикладных задач на основе изученных алгоритмов и методов; - применять при решении задач структуры данных: списки, словари, деревья, очереди; применять при составлении алгоритмов базовые операции со структурами данных; - использовать основные понятия, конструкции и структуры данных последовательного программирования, а также правила записи этих конструкций и структур в выбранном для изучения языке программирования; - использовать в программах данные различных типов; применять стандартные и собственные подпрограммы для обработки символьных строк; выполнять обработку © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ использовать основные управляющие конструкции; 11. владение навыками и опытом разработки программ в выбранной среде программирования, включая тестирование и отладку программ; владение элементарными навыками формализации прикладной задачи и документирования программ; 12. сформированность представлений о важнейших видах дискретных объектов и об их простейших свойствах, алгоритмах анализа этих объектов, о кодировании и декодировании данных и причинах искажения данных при передаче; систематизацию знаний, относящихся к математическим объектам информатики; умение строить математические объекты информатики, в том числе логические формулы; 13. сформированность представлений об устройстве современных компьютеров, о тенденциях развития компьютерных технологий; о понятии "операционная система" и основных функциях операционных систем; об общих принципах разработки и функционирования интернет-приложений; 14. сформированность представлений о компьютерных сетях и их роли в современном мире; знаний базовых принципов организации и функционирования компьютерных сетей, норм информационной этики и права, принципов обеспечения информационной безопасности, способов и средств обеспечения надежного функционирования средств ИКТ; 15. владение основными сведениями о базах данных, их структуре, средствах создания и работы с ними; 16. владение опытом построения и использования компьютерно-математических моделей, проведения экспериментов и статистической обработки данных с помощью компьютера, интерпретации результатов, получаемых в ходе моделирования реальных процессов; умение оценивать числовые параметры моделируемых объектов и данных, хранящихся в виде массивов различной размерности; выбирать тип цикла в зависимости от решаемой подзадачи; составлять циклы с использованием заранее определенного инварианта цикла; выполнять базовые операции с текстовыми и двоичными файлами; выделять подзадачи, решение которых необходимо для решения поставленной задачи в полном объеме; реализовывать решения подзадач в виде подпрограмм, связывать подпрограммы в единую программу; использовать модульный принцип построения программ; использовать библиотеки стандартных подпрограмм; - применять алгоритмы поиска и сортировки при решении типовых задач; - выполнять объектно-ориентированный анализ задачи: выделять объекты, описывать на формальном языке их свойства и методы; реализовывать объектно-ориентированный подход для решения задач средней сложности на выбранном языке программирования; - выполнять отладку и тестирование программ в выбранной среде программирования; использовать при разработке программ стандартные библиотеки языка программирования и внешние библиотеки программ; создавать многокомпонентные программные продукты в среде программирования; - инсталлировать и деинсталлировать программные средства, необходимые для решения учебных задач по выбранной специализации; пользоваться навыками формализации задачи; создавать описания программ, инструкции по их использованию и отчеты по выполненным проектным работам; разрабатывать и использовать компьютерно-математические модели; анализировать соответствие модели реальному объекту или процессу; проводить эксперименты и статистическую обработку данных с помощью компьютера; интерпретировать результаты, получаемые в © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ процессов, пользоваться базами данных и справочными системами; 17. сформированность умения работать с библиотеками программ; наличие опыта использования компьютерных средств представления и анализа данных. ходе моделирования реальных процессов; оценивать числовые параметры моделируемых объектов и процессов; - использовать на практике общие правила проведения исследовательского проекта (постановка задачи, выбор методов исследования, подготовка исходных данных, проведение исследования, формулировка выводов, подготовка отчета); планировать и выполнять небольшие исследовательские проекты; - проектировать собственное автоматизированное место; следовать основам безопасной и экономичной работы с компьютерами и мобильными устройствами; соблюдать санитарно-гигиенические требования при работе за персональным компьютером в соответствии с нормами действующих СанПиН. Выпускник получит возможность научиться: - приводить примеры различных алгоритмов решения одной задачи, которые имеют различную сложность; использовать понятие переборного алгоритма; - использовать понятие универсального алгоритма и приводить примеры алгоритмически неразрешимых проблем; - использовать второй язык программирования; сравнивать преимущества и недостатки двух языков программирования; - создавать программы для учебных или проектных задач средней сложности; - использовать информационнокоммуникационные технологии при моделировании и анализе процессов и явлений в соответствии с выбранным профилем; - осознанно подходить к выбору ИКТсредств и программного обеспечения для решения задач, возникающих в ходе учебы и вне ее, для своих учебных и иных целей. © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ РАЗДЕЛ 2. СОДЕРЖАНИЕ ЭЛЕКТИВНОГО КУРСА 10 -11 классы 10 класс Введение. Линейное программирование Инструктаж по правилам техники безопасности. Основные цели и задачи факультативного курса. Организация занятий и самостоятельной работы. Компьютерное математическое моделирование, его этапы. Информационные структуры (модели) для описания объектов и систем. Перевод проблем из реальной действительности в адекватную оптимальную модель (информационную, физическую, математическую), оперирование этой моделью в процессе решения задачи при помощи понятийного аппарата и средствами той науки, к которой относится построенная модель. Факторы, влияющие на поведение изучаемой системы. Ранжирование этих факторов. Линейное программирование – введение. Общая формулировка и существование решения задач линейного программирования. Симплекс-метод. Алгоритмическая реализация симплекс метода. Программная реализация симплекс-метода в PascalABC. Оптимальный способ выражения алгоритма для решения конкретных задач (словесный, графический, с помощью формальных языков). Результат выполнения заданного алгоритма или его фрагмента. Анализ предложенного алгоритма, например, определять какие результаты возможны при заданном множестве исходных значений. Логические значения, операции и выражения с ними. Вычисление значения логического выражения. Структурное программирование Линейные, ветвящиеся и циклические конструкции языка программирования. Вспомогательные алгоритмы. Технологии построения простых и сложных алгоритмов. Выделение подзадач. Использование вспомогательных алгоритмов. Компиляция и редактирование программ. Использование справки в среде программирования, библиотечных модулей. Строки как вид массивов. Максимальная и текущая длины строки. Основные алгоритмы над строками (копирование, сравнение, поиск буквы и подстроки, подсчет слов, удаление подстроки, удаление пробелов, поиск и замена подстроки). Алгоритмы быстрого поиска (Рабина-Карпа, Бойера-Мура). Матрицы (многомерные массивы) и массивы строк. Основные навыки работы с многомерными массивами. Сортировка в массивах. Основные виды сортировки. Разбор задач, связанных с сортировкой. Эффективность алгоритма сортировки. Алгоритм сортировки выбором (через анализ человеческих действий). Технология объектно-ориентрованного программирования Структура программы на VBA. Объекты VBA. Классы объектов. Определение класса. Данные и методы класса. Наследование. Свойства, методы, события. Разработка пользовательского интерфейса: диалоговые окна, событийные процедуры. Форма и размещение на ней управляющих элементов. Тип, имя и значение переменной. Арифметические, строковые и логические выражения. Присваивание. Функции в VBA (преобразования типов, математические, строковые). © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ Модульный принцип построения проекта и программного кода. Метод последовательной детализации и метод обратного сбора блоков. Постановка задачи. Разработка программы моделирования реакций. Пример моделирования системы массового обслуживания с помощью VBA. Динамическое программирование. Алгоритмическая реализация метода динамического программирования. Реализация алгоритма динамического программирования в VBA. Понятие о моделях многокритериальной оптимизации. Поиск информации, необходимой для решения задачи. Выбор программных средств для исследования построенных моделей. Интерпретация полученных результатов. Анализ полученных результатов и исследование математической модели при различных наборах параметров, в том числе граничных или критических. Реализация математические модели на ЭВМ, создавая алгоритмы и программы на различных языках программирования, в том числе объектноориентированного программирования. 11 класс Вводное занятие. Синтаксис языка программирования Python Инструктаж по правилам техники безопасности. Основные цели и задачи факультативного курса. Организация занятий и самостоятельной работы. Понятие о языке Python. Где применяется. Место языка Python среди языков программирования высокого уровня. Технология разработки программного обеспечения. Стиль программирования. Структура простейшей программы. Стандартные приѐмы написания программы для решения стандартной задачи с использованием основных конструкций программирования и отладки таких программ на языке Python. Особенности структуры программы, представленной на языке Python. Модули, входящие в состав среды Python. Возможности и ограничения использования готовых модулей. Понятие «величина», ее характеристики. Принципиальные отличия величин структурированных и не структурированных. Понятия «операция», «операнд» и их характеристики. Основные операторы языка Python, их синтаксис. Процесс исполнения каждого из операторов. Переменные и константы. Решение задач. Ввод-вывод. Концепция присваивания. Арифметические и логические выражения. Математические функции, входящие в Python. Запись арифметических и логических выражений, всех атрибутов, которые могут в них входить. Программы с линейной структурой. Логический тип. Условная инструкция. Решение задач на циклы и условия. Разработка программ обработки числовой и символьной информации, содержащей линейные, разветвляющиеся и циклические алгоритмы. Знакомство с исполнителем PyRobot. Цикл for. Цикл while. Вложенные циклы. Элементы структуризации программы Исполнитель PyRobot. Функции в программировании. Функции с аргументами. Функции с результатами. Задачи с исполнителем. Графический модуль turtle. Структуры данных, такие как: число, текст, кортеж, список, словарь. Списки. Решение задач со списками. Срезы в списках. Генераторы списков. Решение задач со списками и срезами. Кортежи, множества и диапазоны. Обработка массивов. Операции со списками. Сортировка массива. Двоичный поиск. Двумерные массивы. Словари (ассоциативные массивы) Разработка мини-игры. © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ Значение полноценных процедур и функций для структурно-ориентированного языка высокого уровня. Правила описания функций в Python и построение вызова. Принципиальные отличия между формальными, локальными и глобальными переменными. Область действия описаний в функциях. Рекурсия, ее реализация на Python. Основные приемы формирования процедуры и функции. Свойства данных типа «массив», «матрица». Воспроизведение алгоритмов сортировки массивов и двумерных массивов, поиска в упорядоченном массиве, в нечисловых массивах. Чтение и запись текстовых файлов в заданном формате. Объектно-ориентированное программирование в Python Объектно-ориентированное-программирование. Классы в РуШоп. Особенности ООП в Python. Классы в Python. Разработка задач имитационного моделирования. Поиск максимального и минимального в потоке, проверка простоты. Основы разработки web-приложений в Python. Разработка простейшего web-приложения в Python. © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ РАЗДЕЛ 3. ТЕМАТИЧЕСКОЕ ПЛАНИРОВАНИЕ (с учетом рабочей программы воспитания с указанием количества часов, отводимых на освоение каждой темы) 10 класс (34 часа) № п\п Колво часов Темы уроков Содержание урока Введение. Линейное программирование Вводное занятие. Правила ТБ (инстр. № 12) 1 1 Техника безопасности и правила работы на компьютере. Гигиена, эргономика, ресурсосбережение, технологические требования при эксплуатации компьютерного рабочего места. Инструкция № 12. Основные цели и задачи факультативного курса. Организация занятий и самостоятельной работы. *Неделя безопасности Компьютерное математическое моделирование, его этапы 2 3 1 Линейное программирование – введение 1 Симплекс-метод 4 1 Компьютерное математическое моделирование, его этапы. Информационные структуры (модели) для описания объектов и систем. Перевод проблем из реальной действительности в адекватную оптимальную модель (информационную, физическую, математическую), оперирование этой моделью в процессе решения задачи при помощи понятийного аппарата и средствами той науки, к которой относится построенная модель. Факторы, влияющие на поведение изучаемой системы. Ранжирование этих факторов. Линейное программирование – введение. Общая формулировка и существование решения задач линейного программирования. Оптимальный способ выражения алгоритма для решения конкретных задач (словесный, графический, с помощью формальных языков). Результат выполнения заданного алгоритма или его фрагмента. Симплекс-метод. © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ № п\п Темы уроков Колво часов Содержание урока *Всемирный день математики 5 6 Алгоритмическая реализация симплекс метода Программная реализация симплексметода в PascalABC 1 Алгоритмическая реализация симплекс метода. Анализ предложенного алгоритма, например, определять какие результаты возможны при заданном множестве исходных значений. 1 Программная реализация симплекс-метода в PascalABC. Логические значения, операции и выражения с ними. Вычисление значения логического выражения. Линейные, ветвящиеся и циклические конструкции языка программирования. Структурное программирование 7 Строки как вид массивов 8 Максимальная и текущая длины строки 9 Основные алгоритмы над строками (копирование, сравнение, поиск) 10 Основные алгоритмы над строками (подсчет, удаление, замена) 11 Алгоритмы быстрого поиска (Рабина-Карпа, Бойера-Мура) 1 Компиляция и редактирование программ. Использование справки в среде программирования, библиотечных модулей. Строки как вид массивов. 1 Максимальная и текущая длины строки. Вспомогательные алгоритмы. Технологии построения простых и сложных алгоритмов. Выделение подзадач. 1 Использование вспомогательных алгоритмов. Основные алгоритмы над строками (копирование, сравнение, поиск буквы и подстроки, подсчет слов, удаление подстроки, удаление пробелов, поиск и замена подстроки). 1 Использование вспомогательных алгоритмов. Основные алгоритмы над строками (копирование, сравнение, поиск буквы и подстроки, подсчет слов, удаление подстроки, удаление пробелов, поиск и замена подстроки). Алгоритмы быстрого поиска (Рабина-Карпа, БойераМура). 1 *Тематические классные часы, посвященные году науки и технологий 12 Многомерные массивы и массивы строк 1 13 Основные навыки работы с многомерными 1 Матрицы (многомерные массивы) и массивы строк. Основные навыки работы с многомерными массивами. © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ № п\п Темы уроков Колво часов Содержание урока массивами 14 Сортировка в массивах 1 15 Основные виды сортировки 1 16 Разбор задач, связанных с сортировкой 1 17 Эффективность алгоритма сортировки 1 18 Алгоритм сортировки выбором 1 Сортировка в массивах. Основные виды сортировки. Разбор задач, связанных с сортировкой. Эффективность алгоритма сортировки. Алгоритм сортировки выбором (через анализ человеческих действий). Технология объектно-ориентрованного программирования 19 Структура программы на VBA 1 20 Объекты VBA 1 21 Классы объектов. Данные и методы класса. Наследование Структура программы на VBA. Объекты VBA. Классы объектов. Определение класса. Данные и методы класса. Наследование. 1 *Декада науки, культуры и мира, посвященная Дню российской науки 22 Свойства, методы, события. 23 Разработка пользовательского интерфейса 24 Форма и размещение на ней управляющих элементов 1 25 Тип, имя и значение переменной 1 26 Арифметические, строковые и логические выражения. 1 Арифметические, строковые и логические выражения. Присваивание. 27 Функции в VBA 1 Функции 1 1 Свойства, методы, события. Разработка пользовательского интерфейса: диалоговые окна, событийные процедуры. Форма и размещение на ней управляющих элементов. Тип, имя и значение переменной. в VBA (преобразования типов, © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ № п\п 28 29 30 Темы уроков Колво часов Содержание урока (преобразования типов, математические, строковые) математические, строковые). Модульный принцип построения проекта и программного кода 1 Модульный принцип построения проекта и программного кода. Метод последовательной детализации и метод обратного сбора блоков. 1 Постановка задачи моделирования. Поиск информации, необходимой для решения задачи. Выбор программных средств для исследования построенных моделей. Постановка задачи моделирования Разработка программы моделирования реакций Разработка программы моделирования реакций. 1 *День пожарной охраны 31 32 33 34 Пример моделирования системы массового обслуживания с помощью VBA Динамическое программирование, его алгоритмическая реализация Реализация алгоритма динамического программирования в VBA Понятие о моделях многокритериальной оптимизации 1 1 1 Пример моделирования системы массового обслуживания с помощью VBA. Интерпретация полученных результатов. Анализ полученных результатов и исследование математической модели при различных наборах параметров, в том числе граничных или критических. Динамическое программирование. Алгоритмическая реализация метода динамического программирования. Реализация алгоритма динамического программирования в VBA. Реализация математические модели на ЭВМ, создавая алгоритмы и программы на различных языках программирования, в том числе объектно-ориентированного программирования. Понятие о моделях многокритериальной оптимизации. 1 * Реализация Календарного плана воспитательной работы МАОУ Гимназии № 86 на уровне среднего общего образования (Рабочая программа воспитания) © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ 11 класс (34 часа) № п\п Темы уроков Колво часов Содержание урока Вводное занятие. Синтаксис языка программирования Python 1 Вводное занятие. Правила ТБ (инстр. № 12) 1 Техника безопасности и правила работы на компьютере. Гигиена, эргономика, ресурсосбережение, технологические требования при эксплуатации компьютерного рабочего места. Инструкция № 12. Основные цели и задачи факультативного курса. Организация занятий и самостоятельной работы. *Неделя безопасности 2 Понятие о языке Python 1 Понятие о языке Python. Где применяется. Место языка Python среди языков программирования высокого уровня. 3 Технология разработки программного обеспечения 1 Технология разработки программного обеспечения. 4 Стиль программирования 1 Стиль программирования. 5 Структура простейшей программы 1 Особенности структуры программы, представленной на языке Python. Структура простейшей программы. 6 Переменные и константы 1 Понятие «величина», ее характеристики. Принципиальные отличия величин структурированных и не структурированных. Переменные и константы. Понятия «операция», «операнд» и их характеристики. 7 Решение задач 1 Процесс исполнения каждого из операторов. Решение задач. Стандартные приѐмы написания программы для решения стандартной задачи с использованием основных конструкций программирования и отладки таких программ на языке Python. 8 Ввод-вывод 1 Ввод-вывод. Основные операторы языка Python, их синтаксис. 9 Концепция присваивания 1 Концепция присваивания. *День Интернета. Всероссийский урок безопасности © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ № п\п Колво часов Темы уроков Содержание урока школьников в сети Интернет 10 Арифметические и логические выражения 1 Арифметические и логические выражения. Математические функции, входящие в Python. Запись арифметических и логических выражений, всех атрибутов, которые могут в них входить. 11 Программы с линейной структурой 1 Программы с линейной структурой. Решение задач. 12 Решение задач с линейной структурой 1 Программы с линейной структурой. Решение задач. 13 Логический тип 1 Логический тип. 14 Условная инструкция 1 Условная инструкция. 15 Решение задач на циклы и условия 1 Разработка программ обработки числовой и символьной информации, содержащей линейные, разветвляющиеся и циклические алгоритмы. Решение задач на циклы и условия. 16 Знакомство с исполнителем PyRobot. Цикл for 1 Знакомство с исполнителем PyRobot. Цикл for. Решение задач. Задачи с исполнителем. 17 Цикл while 1 Цикл while. Решение задач. Задачи с исполнителем. 18 Вложенные циклы 1 Вложенные циклы. исполнителем. Решение задач. Задачи с 19 Решение задач с использованием циклов 1 Вложенные циклы. исполнителем. Решение задач. Задачи с Элементы структуризации программы 20 Функции с аргументами и результатами 1 Модули, входящие в состав среды Python. Возможности и ограничения использования готовых модулей. Графический модуль turtle. Исполнитель PyRobot. Функции в программировании. Функции с аргументами. Функции с результатами. Значение полноценных процедур и функций для структурно-ориентированного языка высокого уровня. Правила описания функций в Python и построение вызова. Принципиальные отличия между © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ № п\п Темы уроков Колво часов Содержание урока формальными, локальными и глобальными переменными. Область действия описаний в функциях. 21 Списки. Решение задач со списками 1 Структуры данных, такие как: число, текст, кортеж, список, словарь. Списки. Решение задач со списками. 22 Срезы в списках. Генераторы списков 1 Срезы в списках. Генераторы списков. Чтение и запись текстовых файлов в заданном формате. 23 Решение задач со списками и срезами 1 Рекурсия, ее реализация на Python. Основные приемы формирования процедуры и функции. Решение задач со списками и срезами. 24 Кортежи, множества и диапазоны 1 Структуры данных, такие как: число, текст, кортеж, список, словарь. Кортежи, множества и диапазоны. 25 Обработка массивов. Операции со списками 1 Обработка массивов. Операции со списками. Свойства данных типа «массив», «матрица». Воспроизведение алгоритмов сортировки массивов и двумерных массивов, поиска в упорядоченном массиве, в нечисловых массивах. 26 Сортировка массива. Двоичный поиск 1 Сортировка массива. Двоичный поиск. Воспроизведение алгоритмов сортировки массивов и двумерных массивов, поиска в упорядоченном массиве, в нечисловых массивах. 27 Двумерные массивы. Словари (ассоциативные массивы) 1 Двумерные массивы. Словари (ассоциативные массивы). Воспроизведение алгоритмов сортировки массивов и двумерных массивов, поиска в упорядоченном массиве, в нечисловых массивах. 28 Разработка мини-игры 1 Разработка мини-игры * Подготовка творческих работ в рамках ежегодной выставки декоративно-прикладного и технического творчества Объектно-ориентированное программирование в Python 29 Объектноориентированноепрограммирование в Python 1 Объектно-ориентированное-программирование. Классы в РуШоп. Особенности ООП в Python. © МАОУ Гимназия № 86. Рабочая программа элективного курса «Программирование. 10-11 классы» ____________________________________________________________________________________________ № п\п Темы уроков Колво часов Содержание урока 30 Классы в Python 1 Классы в Python 31 Разработка задач имитационного моделирования 1 Разработка задач имитационного моделирования 32 Поиск максимального и минимального в потоке, проверка простоты 1 Поиск максимального и минимального в потоке, проверка простоты 33 Основы разработки web-приложений в Python 1 Основы разработки web-приложений в Python 34 Разработка простейшего web-приложения в Python 1 Разработка простейшего web-приложения в Python * День детских общественных организаций России. 100-летие Всесоюзной пионерской организации * Реализация Календарного плана воспитательной работы МАОУ Гимназии № 86 на уровне среднего общего образования (Рабочая программа воспитания)