Бакалавриат
2026/2027




Программирование на C++
ID 1213488
Статус:
Курс обязательный (Проектирование интеллектуальных робототехнических систем)
Кто читает:
Департамент программной инженерии
Где читается:
Факультет компьютерных наук
Когда читается:
1-й курс, 2 модуль
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
4
Контактные часы:
42
Программа дисциплины
Аннотация
Дисциплина посвящена основам языка C++ с опорой на современные стандарты, освоению принципов написания качественного промышленного кода и знакомству с современными инструментами разработки. Акцент делается на практическую работу. Обратная связь по выполнению заданий осуществляется в формате ревью кода.
Цель освоения дисциплины
- Сформировать умение самостоятельно разрабатывать понятные и корректные программы на C++, выбирать способы представления данных, управлять временем жизни объектов и применять стандартную библиотеку для решения учебных и прикладных задач.
Планируемые результаты обучения
- Разрабатывает, компилирует и отлаживает программы с условиями, циклами и функциями.
- Выбирает типы данных, учитывает ограничения машинной арифметики и проверяет граничные случаи.
- Применяет рекурсию, ссылки и указатели; объясняет время жизни объектов и способы передачи аргументов.
- Обрабатывает массивы, матрицы, строки и текстовые файлы средствами C++ и стандартной библиотеки.
- Создаёт классы с инвариантами, конструкторами, константными методами и перегруженными операторами.
- Применяет RAII и std::unique_ptr; различает копирование, перемещение и передачу владения.
- Использует контейнеры, итераторы, стандартные алгоритмы, лямбды и простые шаблоны.
- Реализует интерфейсы с виртуальными методами и безопасно работает с полиморфными объектами.
- Обрабатывает ошибки, проверяет корректность решений и собирает программу из нескольких файлов.
Содержание учебной дисциплины
- Основы C++: типы данных и управление выполнением программы
- Функции, ссылки, указатели и время жизни объектов
- Массивы, строки и обработка данных
- Пользовательские типы: структуры, классы и операции над объектами
- Управление ресурсами и обработка ошибок
- Обобщённое программирование и стандартная библиотека
- Наследование, полиморфизм и интерфейсы
Элементы контроля
- ДЗ_1_7ДЗ-1 Типы, выражения, условия и циклы Неделя 1 После С1–С2 (семинар 1 и 2) Вычисления, ветвления, последовательности и граничные случаи. ДЗ-2 Функции, рекурсия, ссылки и указатели Неделя 2 После С3–С4 Декомпозиция, рекурсивные решения, корректная передача параметров. ДЗ-3 Массивы, векторы, строки и файлы Неделя 3 После С5–С6 Обработка последовательностей, матриц и записей; проверка ввода. ДЗ-4 Структуры, классы и операторы Неделя 4 После С7–С8 Реализация интерфейса класса, инвариантов и операций над объектами. ДЗ-5 Ресурсы, RAII, перемещение и исключения Неделя 5 После С9–С10 Корректность владения, времени жизни и обработки ошибок. ДЗ-6 Контейнеры, шаблоны и алгоритмы STL Неделя 6 После С11–С12 Выбор контейнера, стандартные алгоритмы, предикаты и шаблоны. ДЗ-7 Наследование, полиморфизм и интеграция Неделя 7 После С13–С14 Работа через интерфейс, полиморфные объекты и обработка телеметрии.
- УПредлагаемый формат: два вопроса по материалу курса с уточняющими вопросами преподавателя. Студент объясняет понятия и механизмы C++, разбирает небольшой фрагмент кода и обосновывает выбор решения. Каждый вопрос оценивается от 0 до 10; У — среднее арифметическое оценок за два вопроса.
- ППредлагаемый формат: три задачи на запись кода и/или анализ его поведения без запуска программы. Задания охватывают базовые конструкции и обработку данных; классы, память и ресурсы; стандартную библиотеку и полиморфизм. Каждая задача оценивается от 0 до 10; П — среднее арифметическое оценок за три задачи.
Список литературы
Рекомендуемая основная литература
- Огнева, М. В. Программирование на языке С++: практический курс : учебник для вузов / М. В. Огнева, Е. В. Кудрина, А. А. Казачкова. — 2-е изд., перераб. и доп. — Москва : Издательство Юрайт, 2026. — 342 с. — (Высшее образование). — ISBN 978-5-534-18949-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/585853 (дата обращения: 02.07.2026).
- Язык программирования С++. Полное руководство - Липпман С., Лажойе Ж. - Издательство "ДМК Пресс" - 5-94074-040-5 - 2006 - русский - https://e.lanbook.com/book/1216 - ЛАНЬ - 1216
Рекомендуемая дополнительная литература
- Немцова Т.И., Голова С.Ю., Терентьев А.И. и др. - Программирование на языке высокого уровня. Программирование на языке С++ - 978-5-8199-0699-6 - Издательский Дом ФОРУМ - 2026 - https://znanium.ru/catalog/document?id=481669 - 481669 - ZNANIUM