Программирование на С++ КНАД ВСН 26-27

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску

Преподаватели, учебные ассистенты и чаты

Группы БКНАД261 БКНАД262 БКНАД263
Лектор Горденко Мария Константиновна
Семинаристы Береснева Екатерина Николаевна Горденко Мария Константиновна Савищенко Владислав Романович
Старший ассистент Михеев Герман
Ассистенты Михеев Герман Ильинский Андрей Павлов Аркадий

Общая ведомость

TBD

Полезные ссылки

БКНАД261 БКНАД262 БКНАД263
Канал потока, общий чатик для обсуждений
Чат 261 группы Чат 262 группы Чат 263 группы
SmartLMS

Программирование на C++ (I-II модули)

Лекции и ДЗ

Модуль I

Дата Тема ДЗ Дедлайн
1 07.09 О курсе. Введение в язык. Первая программа. Структура программы. Ввод-вывод. Основные операции. Память и типы данных. Контест 1 14.09
2 09.09 Память и типы данных. Хранение чисел в памяти IEEE. Особенности перевода и вычитания больших чисел. Операторы битовые I & ^ и т.д. Лабораторная 1 (SmartLMS),
Лабораторная 1 (forms.yandex)
20.09
3 14.09 Условный оператор и switch. Типичные задачи на условный оператор и switch. Цикл while. break continue. Цикл for. В т.ч. использование while как for. Вложенные циклы, особенности, типовые задачи. Типичные задачи на цикл.
4 16.09 Функции. Рекурсивные функции. Перегрузка.
5 21.09 Введение в указатели. Арифметика указателей. Указатели на указатели. Контест 2 28.09
6 23.09 Указатели нулевые, висячие, динамическое выделение памяти. Ссылки. Умные указатели (кратко).
7 28.09 Массивы. Введение. Статический и динамический. Динамический массив одномерный. Связь с указателями. Типичные задачи на одномерный динамический массив. Лабораторная работа 2 11.10
8 30.09 Двумерный динамический массив. Типичные задачи. Строки. Файлы.
9 05.10 Структуры, классы. Введение в ООП. Контест 3 12.10
10 07.10 Контрольная работа 1
11 12.10 Структуры, классы. Конструкторы и деструкторы. Использование структур. Особенности передачи в функции, работа с коллекциями. Перегрузка операций. Лабораторная работа 3 25.10
12 14.10 Структуры, классы. Конструкторы и деструкторы. Использование структур. Особенности передачи в функции, работа с коллекциями. Перегрузка операций.
13 19.10 Исключения. RAII, правило трех (пяти). Контест 4 26.10
14 21.10 Умные указатели Лабораторная работа 4 15.11

Модуль II

Дата Тема ДЗ Дедлайн
16 02.11 Контейнеры последовательные. Контест 5 09.11
17 09.11 Контейнеры последовательные. Лабораторная работа 5 15.11
18 11.11 Ассоциативные контейнеры. Контест 6 18.11
19 16.11 Разбор демо-версии контрольной работы.
20 18.11 Контрольная работа 2
21 23.11 Наследование. Контест 7 30.11
22 25.11 Наследование.
23 30.11 Подготовка к коллоквиуму
24 02.12 Подготовка к коллоквиуму
05.12 Коллоквиум
25 07.12 Абстрактные классы. Лабораторная работа 6 16.12
26 09.12 Абстрактные классы.
27 14.12 RTTI, разные виды каста
28 16.12 Разбор демо экзамена

Формула оценивания

О = 0.1 * О(КОН) + 0.15 * О(КЛ) + 0.25 * О(ЛАБ) + 0.20 * (О(КР1)+О(КР2))/2 + 0.30 * О(ЭКЗ),
где:

  • КОН — оценка за контесты;
  • КЛ - оценка за коллоквиум;
  • ЛАБ - оценка за лабораторные, максимум - 12 баллов (есть задачи со звёздочками);
  • КР — оценка за контрольную работу;
  • ЭКЗ — оценка за экзамен.


Все оценки подставляются в формулу дробными, округляется только итог арифметически.

Элементы контроля

  • Контрольная работа 107.10.26
  • Контрольная работа 218.11.26
  • Коллоквиум05.12.26
  • Экзамен - 21.12.26

Используемое ПО

На занятиях можно нужно работать с ноутбука/стационарного компьютера.

Необходимо установить CLion для работы с С++ (вы можете установить себе версию Community или получить через студенческую подписку продвинутую версию GitHub). Если что, Community будет достаточно. Версия С++ — С++23 (рекомендую ставить сразу С++26, но вот в тестирующей системе есть только С++ 23, мы его будет в основном обсуждать, иногда говоря о 26).

Списывание

‼️ Все ваши домашние задания, лабораторные, контрольная и экзамен будут проверены на плагиат.

‼️ Использовать ИИ запрещено (в том числе ИИ-автодополения в IDE)

‼️ При обнаружении плагиата (в том числе материала, созданного с помощью генеративного ИИ) элементу оценки будет присвоена оценка «0» и составлена докладная записка.

‼️ При наличии подозрения, что задание выполнено не самостоятельно, преподаватель имеет право инициировать дополнительную проверку или защиту данного элемента оценки. Итоговая оценка за элемент будет основана на результатах такой проверки или защиты.

‼️ Преподаватель также имеет право пригласить любого студента для защиты любого элемента оценки в случайном порядке, вне зависимости от наличия плагиата или подозрения в плагиате. В случае отказа студента от защиты или неявки на защиту, оценка за этот элемент аннулируется.

‼️ Правила пересдачи совпадают с основной сдачей.