1. Исполнители и алгоритмы. Алгоритмические конструкции.
1.1. Алгоритм
1.1.1. Исполнители
1.1.1.1. Формальные
1.1.1.1.1. Круг решаемых задач
1.1.1.1.2. Среда исполнителя
1.1.1.1.3. Система команд исполнителя
1.1.1.1.4. Режимы работы исполнителя
1.1.1.2. Неформальные
1.1.2. Элементы теории алгоритмов
1.1.2.1. Алгоритмические неразрешимые задачи
1.1.2.1.1. Задача останова
1.1.2.2. Универсальный исполнитель
1.1.2.2.1. Машина Тьюринга
1.1.2.2.2. Машина Поста
1.1.2.2.3. Алгорифмы Маркова
1.1.2.3. Сложность вычислений
1.1.3. Свойства алгоритма:
1.1.3.1. Дискретность
1.1.3.2. Понятность
1.1.3.3. Определенность
1.1.3.4. Результативность
1.1.3.5. Массовость
1.1.4. Способы записи алгоритмов:
1.1.4.1. Словесное описание
1.1.4.2. Построчная запись
1.1.4.3. Графические способы записи
1.1.4.3.1. Блок-схема
1.1.4.4. Языки программирования
1.1.5. Величины
1.1.5.1. Постоянная (константа)
1.1.5.2. Переменная
1.2. Алгоритмические конструкции
1.2.1. Следование
1.2.2. Ветвление
1.2.2.1. Полная форма
1.2.2.2. Неполная форма
1.2.2.3. Сложные условия
1.2.2.3.1. Логические функции (И, ИЛИ, НЕ)
1.2.2.4. Множественный выбор
1.2.2.4.1. Оператор выбора
1.2.3. Повторение
1.2.3.1. Циклы
1.2.3.1.1. Цикл с предусловием
1.2.3.1.2. Цикл с постусловием
1.2.3.1.3. Цикл с заданным числом повторений
1.2.3.1.4. Цикл с параметром
1.2.3.1.5. Вложенные циклы
1.3. Конструирование и анализ алгоритмов
1.3.1. Методы разработки
1.3.1.1. Метод разработки "сверху вниз"
1.3.1.2. Метод разработки "снизу вверх"
1.3.2. Вспомогательные алгоритмы
1.3.2.1. Рекурсивные алгоритмы
1.3.3. Решето Эратосфена
1.3.4. Длинна арифметика
2. Компьютерная графика и анимация
2.1. Питон
2.1.1. Библиотека
2.1.1.1. Графический примитив
2.1.2. Пиксель
2.1.3. Холст
2.1.4. Использование переменных
2.1.4.1. Объект
2.1.4.2. Класс
2.1.4.3. Событие
2.1.5. Анимация на компьютере
3. Язык программирования. Анализ алгоритмов
3.1. Языки программирования
3.1.1. Программы
3.1.1.1. Редактор текста
3.1.1.2. Оператор
3.1.1.2.1. Оператор присваивания
3.1.1.2.2. Оператор (функция) вывода print()
3.1.1.2.3. Оператор (функция) ввода input
3.1.1.2.4. Операции сравнения
3.1.1.2.5. Условный оператор
3.1.1.2.6. Оператор цикла
3.1.1.3. Транслятор
3.1.1.3.1. Компилятор
3.1.1.3.2. Интерпретатор
3.1.2. Питон
3.1.2.1. Алфавит
3.1.2.1.1. Служебные слова
3.1.2.1.2. Имена (индетификаторы)
3.1.3. Система(среда) программирования
3.1.4. Алгоритмы
3.1.4.1. Следование
3.1.4.2. Ветвление
3.1.4.2.1. Полная форма
3.1.4.2.2. Неполная форма
3.1.4.2.3. Каскадное ветвление
3.1.4.3. Повторение
3.1.4.3.1. Циклы
3.1.5. Структуры данных
3.1.5.1. Массив
3.1.5.1.1. Индекс
3.1.5.1.2. Размерность массива
3.1.5.1.3. Поиск в массиве
3.1.5.2. Объявление структур
3.1.5.3. Списки
3.1.5.3.1. Связные списки
3.1.5.3.2. Очередь
3.1.5.3.3. Стек
3.1.5.4. Деревья
3.1.5.4.1. Двоичное дерево
3.1.6. Величина
3.1.6.1. Постоянная
3.1.6.2. Переменная
3.1.6.3. Операнды
3.1.6.3.1. Выражение
3.1.6.4. Величины определенного типа
3.1.6.4.1. Целочисленный (int)
3.1.6.4.2. Вещественный (float)
3.1.6.4.3. Строковый (str)
3.1.6.4.4. Логический (bool)
3.1.6.4.5. Другие
4. Численные методы
4.1. Погрешность измерения
4.2. Решение уравнений
4.2.1. Метод перебора
4.2.2. Метод деления отрезка пополам
4.2.3. Использование табличных процессоров
4.2.4. Вычисление площадей фигур
4.2.4.1. Метод прямоугольников
4.2.4.2. Метод трапеций
5. Разработка алгоритмов и программ
5.1. Вспомогательный алгоритм
5.1.1. Подпрограмма
5.1.1.1. Процедура
5.1.1.1.1. Процедура с параметрами
5.1.1.2. Функция
5.1.1.2.1. Логическая функция
5.1.1.3. Модульность подпрограмм
5.1.2. Глобальные переменные
5.1.3. Локальные переменные
5.2. Рекурсия
5.2.1. Рекурсивный алгоритм
5.2.2. Рекурсивная процедура
5.2.3. Рекурсивная функция
5.2.4. Рекуррентная формула
5.2.4.1. Стек
5.2.4.1.1. Указатель стека
5.3. Массивы
5.3.1. Одномерные (Линейные таблицы)
5.3.1.1. Поиск
5.3.1.1.1. Элемент массива, обладающий заданными свойствами
5.3.1.1.2. Найти количество (сумму) элементов массива, обладающих заданными свойствами
5.3.2. Двумерные (прямоугольные таблицы)
5.3.3. Индекс
5.3.4. Реверс массива
5.3.5. Сдвиг элементов массива
5.3.6. Сортировка
5.3.6.1. Неубывающий порядок
5.3.6.2. Невозрастающий порядок
5.3.6.3. Сортировка пузырьком
5.3.6.4. Сортировка выбором
5.3.6.5. Быстрая сортировка
5.4. Динамическое программирование
5.4.1. Динамические массивы
5.4.2. Поис оптимального решения
5.5. Обработка символьных строк
5.5.1. Операции со строками
5.5.1.1. Объединение (конкатенация)
5.5.1.2. Поиск в строках
5.5.1.3. Преобразование строк в число и обратно
5.6. Работа с файлами
5.6.1. Текстовый файл
5.6.2. Двоичные файлы
5.6.2.1. Действия с файлами
5.6.2.1.1. Открытие на чтение
5.6.2.1.2. Открытие на запись
5.6.2.1.3. Закрытие
5.7. Среды быстрой разработки программ
5.7.1. Проектирование интерфейса пользователя
6. ООП
6.1. Объект
6.1.1. Класс
6.1.1.1. Свойства объектов
6.1.1.2. Методы объектов
6.1.1.2.1. Конструктор
6.1.1.3. Инкапсуляция
6.1.1.4. Иерархия наследования
6.1.1.4.1. Полиморфизм
7. Управление
7.1. Управление
7.1.1. Управляемый объект
7.1.1.1. Обратная связь
7.1.2. Управляющий объект
7.1.3. Алгоритм управления
7.1.3.1. Робототехника
7.1.3.1.1. Робот