Бакалавриат
2023/2024
Язык программирования C++
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Кто читает:
Департамент информатики
Когда читается:
1-й курс, 1-4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Зубаков Алексей Васильевич,
Кравченко Дмитрий Сергеевич,
Москвин Денис Николаевич,
Суворов Егор Федорович
Язык:
русский
Кредиты:
8
Контактные часы:
124
Программа дисциплины
Аннотация
Дисциплина базовой части профессионального цикла. Данная дисциплина служит основой для профессиональной ориентации студентов при выборе дисциплин из вариативной части Программы. Дисциплина направлена на формирование у студентов теоретических знаний и практических навыков программирования на языке С++. В результате изучения этой дисциплины студенты будут иметь практические навыки конструирования конкретных алгоритмов на языке высокого уровня для решения разнообразных математических задач.
Цель освоения дисциплины
- Формирование у студентов теоретических знаний и практических навыков программирования на языке С++.
Планируемые результаты обучения
- Владеет понятием динамический полиморфизм (множественное и виртуальное наследование).
- Владеет понятием: Организация разработки программ на С++. Владеет понятиями: компоновка программ; единицы трансляции; ODR. Знает: глобальные/локальные переменные. Владеет понятиями: работа с памятью; указатели, массивы и ссылки.
- Владеет понятиями: встроенные типы; инструкции и операторы; приведение типов; функции. Владеет понятиями: передача параметров, возврат значений; перегрузки; Bind & function; конвенции вызова.
- Владеет понятиями: классы; функции-члены. Знает 4 главных функции-члены. Владеет понятиями: Swap-trick; поля класса.
- Владеет понятиями: переопределение операторов; пространства имен; динамический полиморфизм (простое наследование).
- Знает: стратегии обработки ошибок; обобщенное программирование; шаблоны функций и классов; специализации шаблонов; связь с динамическим полиморфизмом.
Содержание учебной дисциплины
- Средства простроения программ на С++. Основные способы организации процедурного программирования на С++.
- Введение в объектно-ориентированное программирование на С++
- Обобщенное программирование. Обработка ошибок и своевременное освобождение ресурсов.
Элементы контроля
- Домашнее заданиеДомашние задания выдаются студентам в течение семестра, каждое в одном варианте (в среднем 4-7 заданий в семестр). Типичный срок выполнения домашнего задания — 1 неделя, типичный срок исполнения замечаний после проверки — дополнительная 1 неделя. Форма представления обучающимися домашнего задания — программа на языке С++, загруженная в специализированную систему проверки и проходящая автоматические проверки. Домашние задания оцениваются от 0 до 10 баллов, некоторые упрощённые могут оцениваться до 5 баллов.
- Экзамен №1Устный экзамен проводится в форме ответов на вопросы экзаменационного билета, ответы на дополнительные вопросы на связанные с билетом темы, а также ответы на обязательные вопросы. Экзаменационный билет содержит несколько подряд идущих вопросов на одну тему. На подготовку ответа выделяется 1 час. На ответ и дополнительные вопросы выделяется 30 минут.
- Экзамен №2Устный экзамен проводится в форме ответов на вопросы экзаменационного билета, ответы на дополнительные вопросы на связанные с билетом темы, а также ответы на обязательные вопросы. Экзаменационный билет содержит несколько подряд идущих вопросов на одну тему. На подготовку ответа выделяется 1 час. На ответ и дополнительные вопросы выделяется 30 минут.
Промежуточная аттестация
- 2023/2024 учебный год 2 модульПреподаватель учитывает оценку за текущий контроль (домашние задания). Онакопленная = 10*(Одз1 + Одз2 + ...)/С, где Одз — баллы за домашние задания, С — сумма максимально возможных баллов за домашние задания. Результирующая оценка за дисциплину рассчитывается следующим образом: ОРезультирующая = 0.6*Онакопленная + 0.4*Оэкзамен. Онакопленная и Оэкзамен являются блокирующими оценками.
- 2023/2024 учебный год 4 модульПреподаватель учитывает оценку за текущий контроль (домашние задания). Онакопленная = 10*(Одз1 + Одз2 + ...)/С, где Одз — баллы за домашние задания, С — сумма максимально возможных баллов за домашние задания. Результирующая оценка за дисциплину рассчитывается следующим образом: ОРезультирующая = 0.6*Онакопленная + 0.4*Оэкзамен. Онакопленная и Оэкзамен являются блокирующими оценками.
Список литературы
Рекомендуемая основная литература
- Огнева, М. В. Программирование на языке С++: практический курс : учебное пособие для бакалавриата и специалитета / М. В. Огнева, Е. В. Кудрина. — Москва : Издательство Юрайт, 2019. — 335 с. — (Бакалавр и специалист). — ISBN 978-5-534-05123-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/438987 (дата обращения: 28.08.2023).
Рекомендуемая дополнительная литература
- Зыков, С. В. Программирование. Объектно-ориентированный подход : учебник и практикум для академического бакалавриата / С. В. Зыков. — Москва : Издательство Юрайт, 2019. — 155 с. — (Бакалавр. Академический курс). — ISBN 978-5-534-00850-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/434106 (дата обращения: 28.08.2023).