Дисциплина базовой части профессионального цикла. Данная дисциплина служит основой для профессиональной ориентации студентов при выборе дисциплин из вариативной части Программы. Дисциплина направлена на формирование у студентов теоретических знаний и практических навыков программирования на языке С++. В результате изучения этой дисциплины студенты будут иметь практические навыки конструирования конкретных алгоритмов на языке высокого уровня для решения разнообразных математических задач.
Цель освоения дисциплины
Формирование у студентов теоретических знаний и практических навыков программирования на языке С++
Планируемые результаты обучения
Владеет понятием динамический полиморфизм (множественное и виртуальное наследование).
Владеет понятием: Организация разработки программ на С++. Владеет понятиями: компоновка программ; единицы трансляции; ODR. Знает: глобальные/локальные переменные. Владеет понятиями: работа с памятью; указатели, массивы и ссылки.
Владеет понятиями: классы; функции-члены. Знает 4 главных функции-члены. Владеет понятиями: Swap-trick; поля класса.
Владеет понятиями: переопределение операторов; пространства имен; динамический полиморфизм (простое наследование).
Знает: стратегии обработки ошибок; обобщенное программирование; шаблоны функций и классов; специализации шаблонов; связь с динамическим полиморфизмом.
Содержание учебной дисциплины
Раздел 1. Процедурное программирование и основы языка
Раздел 2. Объектно-ориентированное, обобщённое программирование и многопоточность
Раздел 3. Метапрограммирование и современные возможности
Элементы контроля
Домашнее задание
Домашние задания выдаются студентам в течение семестра, каждое в одном варианте (6 заданий в семестр). Типичный срок выполнения домашнего задания —1 неделя, типичный срок исполнения замечаний после проверки —дополнительная 1 неделя. Форма представления обучающимися домашнего задания —программа на языке С++, загруженная в специализированную систему проверки и проходящая автоматические проверки. Домашние задания оцениваются от 0 до 10 баллов, некоторые упрощенные могут оцениваться до 5 баллов.
Коллоквиум
Коллоквиум проводится в конце первого модуля в письменной форме (на бланках) или на компьютере в контролируемой среде. Общая продолжительность — 40–60 минут. Коллоквиум состоит из двух частей: теоретические вопросы (закрытые и открытые) + практическое задание (написание небольшого фрагмента кода).
Минимальный порог: 12 баллов из 20 (обязательное условие для получения итоговой оценки).
Экзамен
Экзамен проводится в письменной форме (на бланках) либо на компьютере в контролируемой среде. Общая продолжительность – 90 минут. Тестирование состоит из двух частей:
Часть 1 (60% веса) – 25–30 заданий закрытого и открытого типа (выбор ответа, короткий ответ, сопоставление) по всем темам, изученным в 1-м и 2-м модулях (разделы 1–2 программы: процедурное программирование, ООП, исключения, основы шаблонов, работа с памятью, ODR, CMake, начальная многопоточность).
Часть 2 (40% веса) – практическое задание: написать небольшой фрагмент кода (функцию, класс или исправить ошибку) на бумаге или в предоставленном редакторе без автодополнения.
Домашнее задание
Домашние задания выдаются студентам в течение семестра, каждое в одном варианте (в среднем 8 заданий в семестр). Типичный срок выполнения домашнего задания —1 неделя, типичный срок исполнения замечаний после проверки —дополнительная 1 неделя. Форма представления обучающимися домашнего задания —программа на языке С++, загруженная в специализированную систему проверки и проходящая автоматические проверки. Домашние задания оцениваются от 0 до 10 баллов, некоторые упрощенные могут оцениваться до 5 баллов.
Устный экзамен
Устный экзамен проводится в форме ответов на вопросы экзаменационного билета, ответы на дополнительные вопросы на связанные с билетом темы, а также ответы на обязательные вопросы. Экзаменационный билет содержит несколько подряд идущих вопросов на одну тему. На подготовку ответа выделяется 1 час. На ответ и дополнительные вопросы выделяется 30 минут.
Промежуточная аттестация
2026/2027 2nd module
Общая сумма баллов по курсу рассчитывается по формуле:
Оитог = Одз + Ок + Оэкз
Одз — средняя оценка за все домашние задания ( до 60 баллов);
Ок— оценка за рубежный контроль (коллоквиум) (до 20 баллов);
Оэкз — оценка за экзамен (до 20 баллов).
Максимально возможная оценка: 100 баллов или 10 баллов по шкале НИУ ВШЭ по шкале перевода
10 - 100 - Максимальный результат;
9 - 90–99 - Отлично;
8 - 80–89 - Очень хорошо;
7 - 70–79 - Хорошо;
6 - 60–69 - Хорошо;
5 - 50–59 - Удовлетворительно;
4 - 40–49 - Минимальный порог прохождения;
3 - 30–39 - Неудовлетворительно;
2 - 20–29 - Явно неудовлетворительно
1 - 10–19 - Практическое отсутствие выполнения;
2026/2027 4th module
Общая сумма баллов по курсу рассчитывается по формуле:
Оитог = Одз + Оэкз
Одз — средняя оценка за все домашние задания (до 80 баллов);
Оэкз — оценка за экзамен (до 20 баллов).
Максимально возможная оценка: 100 баллов или 10 баллов по шкале НИУ ВШЭ по шкале перевода
10 - 100 - Максимальный результат;
9 - 90–99 - Отлично;
8 - 80–89 - Очень хорошо;
7 - 70–79 - Хорошо;
6 - 60–69 - Хорошо;
5 - 50–59 - Удовлетворительно;
4 - 40–49 - Минимальный порог прохождения;
3 - 30–39 - Неудовлетворительно;
2 - 20–29 - Явно неудовлетворительно
1 - 10–19 - Практическое отсутствие выполнения;
Список литературы
Рекомендуемая основная литература
Огнева, М. В. Программирование на языке С++: практический курс : учебное пособие для вузов / М. В. Огнева, Е. В. Кудрина. — Москва : Издательство Юрайт, 2024. — 335 с. — (Высшее образование). — ISBN 978-5-534-05123-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/539713 (дата обращения: 02.07.2026).
Рекомендуемая дополнительная литература
Зыков, С. В. Программирование. Объектно-ориентированный подход : учебник и практикум для вузов / С. В. Зыков. — Москва : Издательство Юрайт, 2023. — 155 с. — (Высшее образование). — ISBN 978-5-534-00850-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/512425 (дата обращения: 02.07.2026).
Instructors
Гурьев Дмитрий Константинович
Давыдов Семен Викторович
Zarubin, Anton
Кочармин Михаил Дмитриевич
Программа дисциплины
Аннотация
Цель освоения дисциплины
Планируемые результаты обучения
Содержание учебной дисциплины
Элементы контроля
Промежуточная аттестация
Список литературы
Рекомендуемая основная литература
Рекомендуемая дополнительная литература
Авторы