====== Темы контрольной работы ====== ===== 1 семестр ===== * Введение в язык Python: работа с числами: целые, вещественные, комплексные. Операции над числами. Модуль math. * Введение в язык Python: работа с логическими значениями. * Введение в язык Python: работа со строками. Операции над строками. Методы работы со строками. * Введение в язык Python: работа со списками. Операции над списками. Методы работы со списками. * Введение в язык Python: условие, цикл. Функции range и enumerate. * Введение в язык Python: создание собственных функций. Аргументы по умолчанию, именованные и позиционные аргументы. * Сравнение языков Python и C: виды типизаций, управление памятью, сборка программ (интерпретация и компиляция). Байт-код. * Введение в язык Python: объекты, ссылки, разделяемые ссылки. * Импорт модулей. Создание собственных модулей. * Позиционные системы счисления: двоичная, восьмеричная, десятичная и шестнадцатеричная. * Количество бит, необходимое для записи числа в n-ичной системе счисления. * Булева алгебра: И, ИЛИ, ИНВЕРСИЯ, И-НЕ, ИЛИ-НЕ, ИСКЛЮЧАЮЩЕЕ ИЛИ. Таблицы истинности с помощью побитовых операций. * Построение сумматора с помощью вентилей. * Формат представления текстовых данных на компьютере. * Формат представления чисел на компьютере. Знаковые и беззнаковые целые числа. * Формат представления чисел с плавающей точкой. Одинарная и двойная точность. Специальные случаи представления. * Сравнение чисел с плавающей точкой. Точность. ===== 2 семестр ===== * Императивное и декларативное программирование: примеры * Создание классов, экземпляров. Особенности ООП в Python * Поля экземпляра класса * Поля и методы класса. Изменяемые и неизменяемые поля * Конструктор класса * Скрытые поля и методы экземпляра класса * Наследование * Исключения. Обработка исключений, генерация исключений * Функциональное программирование. * Введение в анализ данных.