Содержание
- Кратко о курсе
- Содержание обучения
- Последовательность освоения
- Логика курса
- Тематическое планирование
- Общие планируемые результаты
Курс для 9 класса сочетает Python и C++: одни и те же алгоритмические идеи сопоставляются в двух языках программирования.
01. Кратко о курсе
| Параметр | Значение |
|---|---|
| Класс | 9 |
| Языки | Python и C++ |
| Тематические позиции | 6 |
| Сумма числовых значений в плане | 34 часов |
02. Содержание обучения
Обработка файлов. Типы файлов. Чтение данных. Запись данных
Обработка данных из файла.
Функции. Логические функции. Рекурсивные функции
Сортировка массивов. Метод пузырька (сортировка обменами)
Метод выбора. Сортировка слиянием. Быстрая сортировка.
Сортировка в языке Python.
Алгоритмы поиска. Двоичный поиск в массиве данных. Двоичный
поиск по ответу.
03. Последовательность освоения
Файлы и данные
Первый блок охватывает типы файлов, чтение, запись и обработку данных из файла. Одна и та же схема действий отрабатывается на Python и C++: открыть источник, прочитать значения, преобразовать их и сохранить результат. Такая последовательность делает обработку данных воспроизводимой.
Функции и рекурсия
Функции рассматриваются как инструмент структурирования решения. В отдельный блок выделены логические функции, возвращающие истинностное значение, и рекурсивные функции, вызывающие сами себя. Сопоставление двух языков помогает отделить сам алгоритм от языковой формы его записи.
Сортировки
Последовательно сравниваются сортировка обменами, метод выбора, сортировка слиянием и быстрая сортировка. Исходная программа также указывает стандартную сортировку Python. В результате сопоставляются явные алгоритмы и готовые средства языка; марафон на пять часов закрепляет этот блок.
Поиск
Поисковый блок включает двоичный поиск в массиве данных и двоичный поиск по ответу. Оба приёма опираются на сокращение области поиска, но решают разные типы задач. Завершающеё повторение объединяет файлы, функции, сортировки и поиск в одном наборе задач.
04. Логика курса

05. Тематическое планирование
| № | Тема | Язык и часы |
|---|---|---|
| 1 | Обработка файлов. Типы файлов. Чтение данных. Запись данных. Обработка данных из файла. | Python — 3 ч; С++ — 3 ч |
| 2 | Библиотеки рисования графиков (Марафон по программированию) | Python — 2 ч; С++ — 2 ч |
| 3 | Функции. Логические функции. Рекурсивные функции. | Python — 2 ч; С++ — 2 ч |
| 4 | Алгоритмы сортировки | Python — 5 ч; С++ — 5 ч |
| 5 | Алгоритмы поиска | Python — 3 ч; С++ — 3 ч |
| 6 | Повторение и обобщение (Марафон по программированию) | Python — 4 ч; С++ — часы в исходной таблице не разделены |
06. Общие планируемые результаты
В исходной программе эти результаты заданы для курса 7–9 классов целиком, без разделения по классам. Они также собраны на общей странице курса.
ПЛАНИРУЕМЫЕ РЕЗУЛЬТАТЫ ОСВОЕНИЯ ЭЛЕКТИВНОГО
КУРСА
Личностные результаты
- готовность и способность к самостоятельной, творческой и
ответственной деятельности;
- навыки сотрудничества со сверстниками, взрослым в
образовательной, общественно полезной, учебно-исследовательской,
проектной и других видах деятельности;
- готовность и способность к образованию, в том числе
самообразованию;
- сознательное отношение к непрерывному образованию как
условию успешной профессиональной и общественной деятельности;
- эстетическое отношение к миру, включая эстетику научного и
технического творчества;
- осознанный выбор будущей профессии и возможностей
реализации собственных жизненных планов; отношение к
профессиональной деятельности как возможности участия в решении
личных, общественных, государственных, общенациональных проблем.
Метапредметные результаты
- составлять и отлаживать простые диалоговые программы;
- использовать основные алгоритмические конструкции: условные
операторы, циклы с условием, циклы по переменной;
- использовать поставленные вопросы в качестве инструмента
познания, а также в качестве основы для формирования гипотезы по
проверке правильности высказываемых суждений;
- использовать вспомогательные алгоритмы (процедуры и функции)
для структуризации программ;
- использовать символьные строки;
- использовать двоичный поиск;
- обрабатывать данные, записанные в текстовые файлы, и сохранять
в файлах результаты работы программы;
- использовать структуры для объединения данных;
Предметные результаты
В результате освоения курса обучающийся
- научится составлять и отлаживать простые диалоговые
программы;
- узнает особенностей машинных вычислений с целыми и
вещественными числами;
- научится использовать основные алгоритмические конструкции:
условные операторы, циклы с условием, циклы по переменной;
- овладеет методами построения графических изображений
программными средствами;
- познакомится с методами описания графов и некоторыми
популярными алгоритмами на графах;
- познакомится с объектно-ориентированным подходом к
разработке программ;
Опубликованные уроки
- Урок 1. Python: Типы файлов и чтение
- Урок 2. Python: Запись и обработка строк файла
- Урок 3. Python: Ошибки и надёжный файловый конвейер
- Урок 4. C++: Типы файлов и чтение
- Урок 5. C++: Запись и обработка строк файла
- Урок 6. C++: Ошибки и надёжный файловый конвейер
- Урок 7. Python: Подготовка данных и осей
- Урок 8. Python: Построение и проверка графика
- Урок 9. C++: Подготовка данных и осей
- Урок 10. C++: Построение и проверка графика
- Урок 11. Python: Логические функции и контракт
- Урок 12. Python: Рекурсия и базовый случай
- Урок 13. C++: Логические функции и контракт
- Урок 14. C++: Рекурсия и базовый случай
- Урок 15. Python: Сортировка пузырьком
- Урок 16. Python: Сортировка выбором
- Урок 17. Python: Сортировка слиянием
- Урок 18. Python: Быстрая сортировка
- Урок 19. Python: Встроенная сортировка и сравнение сложности
- Урок 20. C++: Сортировка пузырьком
- Урок 21. C++: Сортировка выбором
- Урок 22. C++: Сортировка слиянием
- Урок 23. C++: Быстрая сортировка
- Урок 24. C++: Встроенная сортировка и сравнение сложности
- Урок 25. Python: Линейный и двоичный поиск
- Урок 26. Python: Инвариант и границы двоичного поиска
- Урок 27. Python: Двоичный поиск по ответу
- Урок 28. C++: Линейный и двоичный поиск
- Урок 29. C++: Инвариант и границы двоичного поиска
- Урок 30. C++: Двоичный поиск по ответу
- Урок 31. Постановка проекта обработки данных
- Урок 32. Реализация и автоматические тесты
- Урок 33. Сравнение Python и C++
- Урок 34. Защита и исправление проекта