Тема 1. Введение в язык программирования Python. Его история. Первый запуск рабочей среды /2 часа/
Эта тема отвечает на вопрос «Почему Python?». Ученики узнают об особенностях этого языка программирования и его истории. Также в Темае приводится инструкция по скачиванию и установке языка Python с сайта его разработчиков и запуску рабочей среды языка.
Тема 2. Математические вычисления в Python /2 часа/
Эта тема научит вас работать с двумя наиболее распространёнными числовыми типами данных Python: целыми числами (бывают положительными, отрицательными или равными нулю (…, -1, 0, 1, …)) и числами с плавающей точкой (числа с десятичными знаками (например, 9.0 или -2.25)).
Тема 3. Структура программы на языке Python. Операции, переменные и литералы. Типы данных /2 часа/
В этой теме будут рассмотрены составные структурные единицы программ, такие как модули, инструкции и выражения. Также ученики познакомятся с понятием переменной, операции и типизацией данных в языке Python.
Тема 4. Ввод и вывод данных в программах на языке Python /2 часа/
В этой теме рассматриваются функции ввода и вывода данных в программах на языке Python, а также различные варианты их использования. Ученики узнают о пользовательском интерфейсе программы и принципе его дружественности.
Тема 5. Линейные алгоритмы. Операции над целочисленными данными /2 часа/
Эта тема станет началом более подробного знакомства учеников с различными типами данных в языке Python. На этй Теме будут рассмотрены целочисленный тип данных, инструкции и алгоритмы обработки таких данных. Также ученики узнают о первом типе структуры алгоритмов – линейных алгоритмах.
Тема 6. Линейные алгоритмы. Операции над вещественными данными /2 часа
В этой теме продолжается знакомство учеников с линейными алгоритмами обработки данных, а также с числовыми типами данных. Рассматриваются числа с плавающей точкой в языке Python, инструменты для работы с ними, встроенные в рабочую среду, а также описанные во внешних модулях, таких как math и random
Тема 7. Логические выражения. Логический тип данных. Условный оператор /2 часа/
В этой теме познакомимся с ещё одним типом алгоритмов – разветвляющимися алгоритмами, а также узнают об инструментах для их реализации, таких как логический тип данных, основные логические операции и инструкция ветвления, которая позволяет выбрать один из двух наборов инструкций для исполнения в зависимости от ситуации.
Тема 8. Разветвляющиеся алгоритмы. Сложные условия. Каскадные ветвления /2 часа/
В этой теме будет продолжено рассмотрение разветвляющихся алгоритмов. Ученики узнают о том, что инструкции ветвления могут быть вложенными и как это усложняет структуру алгоритма, а также о каскадных ветвлениях, которые позволяют разделять код программы более чем на две ветви.
Тема 9. Циклические алгоритмы. Цикл с предусловием /2 часа/
Помимо линейных и разветвляющихся алгоритмов, выделяется ещё третий основной тип алгоритмов – циклические. Из этой темы узнаем о том, что циклическими называются алгоритмы, содержащие структуру повторения, а также познакомятся с первым способом реализации этой структуры – циклом с предусловием и тем, как этот цикл программируется на языке Python.
Тема 10. Циклические алгоритмы. Цикл с постусловием. Инструкции управления циклом /2 часа/
Команда повторить. Из этой теме мы узнаем о существовании ещё одного типа циклов – цикле с постусловием, а также о том, что в языке Python нет отдельной инструкции для реализации именно этого цикла, но его можно реализовать с помощью инструкций управления циклом. Также будут рассмотрены инструкции управления циклом, их программирование и необходимость использования.
Тема 11.Циклические алгоритмы. Цикл с параметром /2 часа/
На этой теме познакомимся с последним типом циклов – циклом с параметром. Рассмотрят, как работает такой цикл и с какими особенностями связано его программирование на языке Python. Также будет рассмотрена функция генерации диапазона значений.
Тема 12. Комбинирование циклов при решении задач. Сложные циклические алгоритмы /2 часа/
Из этой темы узнаем о том, что в программах могут использоваться вложенные циклы. Будут рассмотрены проблемы, связанные с программирование вложенных циклов, такие как усложнение структуры программы и сильное увеличение числа повторений, из-за которого программа может медленно работать.
Тема 13. Этапы решение задачи на компьютере. Принцип последовательного конструирования алгоритма /2 часа/
ИВ этом уроке рассматриваются этапы решения задачи на компьютере и их особенности. Наиболее подробно рассматривается этап создания алгоритма. Ученики узнают, что при необходимости разработки сложного алгоритма можно использовать принцип последовательного конструирования алгоритма. Будет также рассмотрен принцип его работы.
Тема 14. Функции
/2 часа/
Из этого урока узнаем, что запрограммировать решение отдельных подзадач можно в отдельных функциях, которые потом при необходимости вызываются в различных местах программы.
Тема 15. Применение функций при решении задач /2 часа/
В этой теме будет продолжено изучение функций. Более детально и на конкретном примере будет рассмотрена польза функций при решении задач. Также ученики узнают о таких важных в программировании принципах, как модульность и повторное использование кода, для чего они нужны и в чём заключается их польза при разработке сложных программ.
Тема 16. Рекурсия /2 часа/
Из этой темы узнаем о том, что такое рекурсия и в чём её сложность. Будут рассмотрены рекурсивные алгоритмы и их особенности: когда нужно использовать рекурсию в программировании, а когда лучше обойтись без этого.
Тема 17. Списки /2 часа/
В этой теме начинается знакомство со структурными типами данных на примере списков. Будут рассмотрены: определение понятия «списки», их польза в программировании, а также их особенности. Также учащиеся узнают, какие есть способы создания ввода и вывода элементов списков в программах на языке Python
Тема 18. Обработка списков. Линейный поиск. Добавление и удаление элементов. Копирование списков /2 часа/
После того, как мы узнали о списках, нужно рассказать о том, для чего они нужны и что с ними можно делать. В этом уроке будут рассмотрены такие вопросы, как добавление и удаление элементов списков, а также линейный поиск элемента в списке.
Тема 19. Обработка списков. Двоичный поиск и сортировка /2 час/
В этой теме мы познакомимся с сортировкой и узнают, для чего она нужна, рассмотрят алгоритмы сортировки пузырьком, а также рекурсивный алгоритм быстрой сортировки элементов списка. Также ученики узнают, как можно организовать поиск элемента в отсортированном списке.
Тема 20. Символьные строки /2 часа/
На этом уроке будет рассмотрен ещё один структурный тип данных – символьные строки. Ученики вспомнят о том, как хранится текст в оперативной памяти компьютера, узнают о сходствах и отличиях между списками и символьными строками, а также познакомятся с основными операциями обработки строк.
Тема 21. Матрицы. /2 час/
Из этой темы узнаем о том, что такое матрицы и для чего они нужны, рассмотрят реализацию матриц на языке Python и особенности их хранения и обработки, а также какие матрицы называются квадратными, свойства таких матриц, и применят их при решении задачи.
Тема 22. Обработка исключений /2 часа/
В ходе исполнения компьютерных программ часто возникают ошибки. Они могут быть вызваны самыми разными причинами. На этой теме ученики познакомятся с основным инструментом их предотвращения – обработкой исключений, научатся программировать обработку исключений и узнают о типах исключений, которые возникают чаще всего.
Тема 23. Работа с файлами /2 часа/
При работе со структурными типами данных ввод данных с клавиатуры и их вывод на экран имеют целый ряд недостатков. Так, ввод данных с клавиатуры занимает много времени, а при выводе на экран полученные данные сложно использовать где-то ещё. Эти недостатки устраняет файловый ввод-вывод данных. Именно о нём пойдёт речь в этом уроке. Ученики узнают о том, какие есть основные инструменты обработки файлов в языке Python, а также запрограммируют файловый ввод-вывод при решении нескольких задач.
Тема 24. Концепция ООП. Объекты и классы /2 часа/
До этого при решении различных задач ученики использовали парадигму структурного программирования. Она проста и понятна, однако при написании больших и сложных программ она имеет целый ряд недостатков, поэтому в таком случае обычно используют объектно-ориентированное программирование. Из этого урока ученики узнают об основных понятиях объектно-ориентированного программирования, а также выполнят объектно-ориентированный анализ задачи.
Тема 25. Графика Turtle в Python /6 часов/
В этом разделе мы узнаем что модуль Turtle можно использовать для создания игр на Питоне. В мире Python черепашкой зовется объект, напоминающий обыкновенную черепаху, которая медленно ползает и носит свой дом на спине. Только в Python это небольшая черная стрелочка, которая медленно перемещается по экрану. Черепашка хорошо подходит для изучения основ компьютерной графики, и в этой главе мы будем рисовать с ее помощью несложные контуры и линии.
Тема 26. Графика Tkinter в Python /4 часа/
В этом разделе мы узнаем что Python может работать с несколькими графическими библиотеками, обеспечивая создание сложных приложений с развитым графическим пользовательским интерфейсом. с помощью модуля tkinter мы научимся рисовать на холсте простые геометрические фигуры, выводили изображения, а также показывали несложную анимацию. Узнаем, как, используя привязку к событиям, научить: рисунки на холсте реагировать на нажатия клавиш — это еще пригодится нам для создания игры. Выясним, что функции создания графических объектов в tkinter возвращают идентификаторы, чтобы эти объекты можно было изменять, например перемещать их по экрану или менять цвет.