Алгоритм. 1._Алгоритмизация_и_программирование._Часть_1_(Python)». Программа Алгоритмизация и программирование. Часть 1 (Python)
Скачать 451.64 Kb.
|
2 1. Пояснительная записка Введение Программа «Алгоритмизация и программирование. Часть 1 (Python)» — это дополнительная общеразвивающая образовательная программа для школьников ориентированных на развитие своих навыков. Актуальность программы определяется динамичным развитием Информационных технологий и большой востребованностью специалистов в этой области. Программа является дополнением к школьному курсу Информатики, развивающей знания и навыки в области программирования и алгоритмизации, а так же кругозор в вопросах командной разработки. Знание основ программирования позволит слушателям курса сформировать для себя требования к современному разработчику программного обеспечения. Программа имеет техническую направленность. Уровень освоения – общекультурный. Программа предполагает на понятном учащимся языке объяснить основные понятия языка программирования Python и научить решать основные программные задачи, отлаживать и тестировать свои программы, таким образом дать учащимся основные навыки, требуемые в сфере Информационных технологий и алгоритмизации. Новизна программы состоит в применении современных информационных средств программирования. Актуальность Современный уровень развития Информационных технологий предполагает освоение новых методов программирования. Программа нацелена на прививание интереса участников к информатике, а также к существующим задачам программирования. Педагогическая целесообразность Программа направлена на формирование способности к творческой деятельности участников, практическое применение полученных знаний в области программирования в ходе изучения программы, на развитие научно-технического способа мышления обучающимися. Цель программы. Развитие интереса к современным материалам и их практическому применению, формирование у каждого обучающегося навыка самостоятельного выполнения поставленных задач, выявления проблемных мест проекта, развития умений и навыков. Программа рассчитана на оттачивание навыков решения практических задач. Среди задач программы следует выделить обучающие, развивающие и воспитательные задачи. Каждый обучающийся, освоив программу, узнает о языке Python, разберется в особенностях синтаксических и алгоритмических конструкциях языка, получит представления о методах тестирования программ ( обучающие задачи); при этом практическое применение знаний предполагается применение современных технологий программирования (развивающие задачи); также формирование умения работы в команде, творческого отношения к выполняемому заданию ( воспитательные задачи). Отличительные особенности данной дополнительной образовательной программы от уже существующих образовательных программ является то, что она позволяет участникам курса в короткие сроки познакомится с основами программирования на Python. Сформировать навык эффективного решения практических задач за счёт глубокого использования возможностей стандартных компонентов языка Python. Возраст обучающихся:14-18 лет. Сроки реализации: 24 часа. Наполняемость группы: 20-25 человек. Режим занятий: по 3 или 4 академических часа в неделю. Формы организации деятельности Групповые, индивидуально-групповые Методы обучения 3 Словесные, комбинированные, теоретические, практические. Ожидаемые результаты и способы их определения; В результате освоения программы обучающиеся будут знать: − основы программирования; − основы информатики; − алгоритмы и структуры данных; будут уметь: − программировать на Python; − подбирать наиболее подходящие стандартные структуры данных и алгоритмы; − работать в команде и принимать решения; Определение результативности и формы подведения итогов программы. В образовательном процессе будут использованы следующие методы контроля усвоения учащимися учебного материала: Текущий контроль. Будет проводиться с целью непрерывного отслеживания уровня усвоения материала и стимулирования учащихся. Для реализации текущего контроля в процессе объяснения теоретического материала педагог обращается к учащимся с вопросами и короткими заданиями. Тематический контроль. Будет проводиться в виде практических заданий по итогам каждой темы с целью систематизировать, обобщить и закрепить материал. Итоговый контроль. Будет проведен в форме контрольной работы. 2. Учебно-тематический план Данный учебный план доступен учащимся в двух вариантах на выбор. Первый вариант предполагает углубленное изучение синтаксиса языка и его особенностей, что в итоге позволит учащемуся уверенно ориентироваться в языке Python в целом. Второй вариант программы предназначен для более широкого охвата различных тем в разработке программного обеспечения, что лучше подготовит учащегося к дальнейшему развитию в сфере программирования. № Раздел/тема Количество часов Вариант 1. Вариант 2. Всего Теоретические занятия Практические занятия 1 Введение. Основы синтаксиса языка Python. Интерактивная среда Python. Введение в программирование и алгоритмизацию. 4 2 2 2 Список и циклические алгоритмы, работа со строками. Функции в Python. Базовые структуры данных и циклические алгоритмы. 4 2 2 3 Лямбда функции. Функции map и filter. Множества в Python. Множество как словарь. Алгоритмы обработки массивов. 4 2 2 4 Стек, очередь. Двумерные списки, ASCII графика при помощи двумерных списков. Решение задач алгебры и оптимизации. 4 2 2 4 5 Исключения в Python, обработка и вызов исключений. Объектно- ориентированное программирование. 4 2 2 6 Итоговое занятие. Программная обработка полу- структурированных данных. 4 2 2 Итого 24 12 12 3. Содержание образовательной программы Вариант 1. Модуль 1. Введение. Основы синтаксиса языка Python. Интерактивная среда Python. • Запуск программ на Python с использованием интерпретатора. • Использование интерактивной среды Python. • Основы синтаксиса, объявление переменных. • Арифметические выражения и операции. • Стандартный ввод/вывод. Модуль 2. Список и циклические алгоритмы, работа со строками. Функции в Python. • Циклы, ветвления, сложные условия. • Цикл по переменной, цикл с условием. • Список в Python, его применение. • Методы создания списка, генератор списка. • Объявление функций, функции с аргументами и без, возвращаемое значение. Модуль 3. Лямбда функции. Функции map и filter. Множества в Python. Множество как словарь. • Тернарный оператор, его применение в генераторе списков. • Функции map и filter, особенности их возвращаемого значения. • Лямбда функции, их применение в функциях map и filter. • Множества в Python. Использование множества как словаря. Модуль 4. Стек, очередь. Двумерные списки, ASCII графика при помощи двумерных списков. • Использование списка в качестве стека или очереди. • Применение стеков и очередей для решения прикладных задач. • Создание двумерного списка. • Использование двумерного списка для хранения матрицы. • Использование двумерного списка рисования двумерной графики. Модуль 5. Исключения в Python, обработка и вызов исключений. • Вызов и поимка исключения в Python. • Стандартные исключения и их обработка. • Применения исключений для обработки внештатных ситуация в программе. Модуль 6. Итоговое занятие. Вариант 2. Модуль 1. Введение программирование и алгоритмизацию • Алгоритм и его свойства • Способы записи алгоритмов • Компиляция и интерпретация • Синтаксис языка Python • Переменные • Арифметические выражения и операции 5 • Стандартные функции • Стандартный ввод/вывод Модуль 2. Базовые структуры данных и циклические алгоритмы • Списки, кортежи, множества • Стек, очередь • Ветвления • Сложные условия • Множественный выбор • Циклические алгоритмы • Циклы с условием • Цикл с переменной Модуль 3. Алгоритмы обработки массивов • Сортировка • Поиск • Рекурсия Модуль 4. Решение задач алгебры и оптимизации • Векторные операции • Работа с матрицами • Решение матричных уравнений • Поиск минимума функции • Интерполяция функций • Работа с полиномами Модуль 5. Объектно-ориентированное программирование • Объект, экземпляр, свойство, метод • Наследование • Инкапсуляция • Полиморфизм • Моделирование объектной системы Модуль 6. Программная обработка полу-структурированных данных • Методы извлечения данных • Пакетные решения для обработки • Выявление ошибок • Чистка данных • Расчет мат. статистик 4. Методическое обеспечение программы Методы обучения, используемые в программе: словесные (устное объяснение материала), наглядные (презентация), практические (демонстрационное выполнение исследовательской лабораторной работы), аналитические. С целью стимулирования творческой активности учащихся будут использованы: игровые методики; − методы сбора и обработки данных; − исследовательский и проблемный методы; − анализ справочных и литературных источников; − поисковый эксперимент; − опытная работа; − обобщение результатов. 6 Вспомогательные учебные материалы Для упрощения процесса изучения языка программирования в процессе обучения будет использоваться программа автоматического тестирования, позволяющая протестировать исходный код программы, написанной учеником. 5. Организационно-педагогические ресурсы программы Материально-техническое обеспечение программы − Оборудование: Наименование На группу, шт. Примечание персональный компьютер или ноутбук 20 ОС не ниже Windows 7, необходим Доступ к сети Интернет скорость не ниже 50 Мбит/с Процессор 64-разрядный Примерно 10 ГБ свободного пространства на диске Память: 4ГБ ОЗУ или выше Проектор 1 Экран 1 Для проектора Кликер 1 Устройство дистанционно переключения слайдов Кадровое обеспечение программы Реализаторы программы: 1.Широков Андрей Игоревич - доцент кафедры инженерной кибернетики; 2. Волков Денис Александрович – студент кафедры инженерной кибернетики; 3. Королев Сергей Юрьевич – студент кафедры инженерной кибернетики. 6. Список литературы а) Использованный при написании программы “Изучаем Python. Программирование игр, визуализация данных, веб приложения” Мэтиз Эрик “Изучаем программирование на Python” Бэрри Полл ”Теоретический минимум по ComputerScience” ФилоФеррейра “Программируем на Python” Доусон Майкл “ Программирование на Python 3. Подробное руководство ” Марк Саммерфилд “Простой Python Современный стиль программирования” Билл Любанович “Python Crash Course” Eric Matthes https://www.pygame.org/docs/ https://www.youtube.com/playlist?list=PLDyvV36pndZHkDRik6kKF6gSb0N0W995h https://www.youtube.com/playlist?list=PLnmlxA5EUR3EyGyF1SIsuxcGAyy5rJSak https://ru.wikipedia.org/wiki/MNIST_(%D0%B1%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0 %BD%D0%BD%D1%8B%D1%85) https://pythonworld.ru/ б) Рекомендованный обучающимся для успешного освоения программы https://informatics.mccme.ru/mod/statements/view3.php?id=11223&chapterid=112286 https://www.youtube.com/watch?v=mEX0R1NOk7Q&feature=youtu.be https://ru.wikipedia.org/wiki/%D0%91%D1%8B%D1%81%D1%82%D1%80%D0%B0%D1%8F_%D1% 81%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0 https://habr.com/ru/post/429258/ |