Программирование на С++ КНАД 22/23 — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Новая страница: «-»)
 
 
(не показано 5 промежуточных версии этого же участника)
Строка 1: Строка 1:
-
+
== Основная информация ==
 +
 
 +
Курс читается на 1 курсе в  3 модуле и состоит из лекций и семинаров.
 +
 
 +
Каждую неделю на семинарах выдается Еженедельное задание по теме прошедшей лекции. Дедлайн - следующий семинар в вашей группе. Еженедельные задания нельзя сдавать после дедлайна. Но если были замечания на code-review и вы получили неполный балл за задачу, то можете переделать '''только их''' в течение недели после сообщения в Я.Контесте. После исправлений необходимо об этом написать своему семинаристу.
 +
 
 +
Кроме того, в течение семестра будут выданы 2 Больших задания, сроком на 2-3 недели. '''Большие ДЗ после дедлайна не проверяются'''. Большие ДЗ являются блокирующими. Для получения положительной оценки за курс необходимо, чтобы в каждом большом ДЗ были выполнены обязательные задачи (за полностью верное решение которых можно получить максимум 4 балла).
 +
 
 +
В конце семестра будет проведен экзамен.
 +
 
 +
За активность на семинаре будет выставлена оценка семинаристом.
 +
 
 +
Итоговая оценка за курс вычисляется по следующей формуле:
 +
 
 +
O<sub>итоговая</sub> = min(10; 0,4*O<sub>Еженедельные ДЗ</sub> + 0,15*O<sub>Большое ДЗ1</sub> + 0,15*O<sub>Большое ДЗ2</sub> + 0,3*O<sub>Экзамен</sub> + 0,1*O<sub>Работа на семинарах</sub>).
 +
 
 +
Таким образом, сумма коэффициентов больше 1, и набрать максимальный балл можно разными способами.
 +
 
 +
Округление арифметическое и осуществляется только для итоговой оценки.
 +
 
 +
== Лекции и семинары ==
 +
 
 +
{| class="wikitable" style="text-align:center"
 +
|-
 +
! Группа !! КНАД221 !! КНАД222 !! ВСН22 !! ВСН23
 +
|-
 +
|| Лекции ||colspan="4"| Лектор [https://t.me/SergSteam Никулов С. А.] <br> сб 13:00 - 16:00
 +
|-
 +
|| Семинарист || [https://t.me/chupolino17 Чупов Д. Д.] <br> чт 13:00 - 16:00 || [https://t.me/zxcvbnnmqwert Федоров М. А.] <br> ср 13:00 - 16:00 || [https://t.me/oduvan_ja Горденко М. К.] <br> пн 14:40 - 17:40|| [https://t.me/oduvan_ja Горденко М. К.] <br> пн 18:00 - 21:00
 +
|-
 +
|| Ассистенты ||  [https://t.me/vladkrytoi Иванов П. А.] || [https://t.me/iiblinov Блинов И. И.] || [https://t.me/vladkrytoi Иванов П. А.] || [https://t.me/iiblinov Блинов И. И.]
 +
|}
 +
 
 +
== Материалы==
 +
 
 +
Все ссылки на материалы и записи находятся в закрепленных сообщениях в Телеграмме. По вопросам доступа к ним пишите лектору.
 +
 
 +
==План курса==
 +
 
 +
{| class="wikitable"
 +
|-
 +
! № !! Дата !! Тема
 +
|-
 +
| 1 || 14.01 || Введение C++ и базовые конструкции 
 +
|-
 +
| 2 || 21.01 || Указатели, ссылки, массивы и начало функций
 +
|-
 +
| 3 || 28.01 || С-строки, функции и начало ООП
 +
|-
 +
| 4 || 04.02 || Поля и методы, шаблоны и конструктор
 +
|-
 +
| 5 || 11.02 || Деструктор, сборка программ на С++
 +
|-
 +
| 6 || 18.02 || Функторы и контейнеры
 +
|-
 +
| 7 || 25.02 || Библиотека алгоритмов, наследование
 +
|-
 +
| 8 || 04.03 || Полиморфизм, исключения
 +
|-
 +
| 9 || 11.03 || Move семантика -
 +
|-
 +
| 10 || 18.03 || Итераторы и умные указатели
 +
|}
 +
 
 +
== Ведомость ==
 +
Ведомость находится по [https://docs.google.com/spreadsheets/d/1cQonshMlXU5hsF67skw4pIRPfDbY7yAmUcH58k_IOr4/edit#gid=0 ссылке]
 +
 
 +
==Контесты==
 +
Для доступа к контекстам необходимо оставить свой логин в ведомости.
 +
 
 +
Если у вас не открывается, то добавьте в начале ссылки official.
 +
 
 +
===Еженедельные контесты===
 +
{| class="wikitable" style="text-align:center"
 +
|-
 +
! № !! ВСН !! КНАД221 !! КНАД222
 +
|-
 +
| 1 || [https://contest.yandex.ru/contest/45397/problems/ контест_1] <br> Дедлайн - 23 января 23:59 || [https://contest.yandex.ru/contest/45397/problems/ контест_1] <br> Дедлайн - 26 января 23:59 || [https://contest.yandex.ru/contest/45397/problems/ контест_1] <br> Дедлайн - 25 января 23:59
 +
|-
 +
| 2 || [https://contest.yandex.ru/contest/45685/problems/ контест_2] <br> Дедлайн - 30 января 23:59 || [https://contest.yandex.ru/contest/45685/problems/ контест_2] <br> Дедлайн - 2 февраля 23:59 || [https://contest.yandex.ru/contest/45685/problems/ контест_2] <br> Дедлайн - 1 февраля 23:59
 +
|-
 +
| 3 ||  [https://contest.yandex.ru/contest/45882/problems/ контест_3] <br> Дедлайн - 6 февраля 23:59 || [https://contest.yandex.ru/contest/46025/problems/ контест_3] <br> Дедлайн - 9 февраля 23:59 || [https://contest.yandex.ru/contest/45956/problems/ контест_3] <br> Дедлайн - 8 февраля 23:59
 +
|-
 +
| 4 || [https://contest.yandex.ru/contest/46143/problems/ контест_4] <br> Дедлайн - 13 февраля 23:59 || [https://contest.yandex.ru/contest/46194/problems/ контест_4] <br> Дедлайн - 16 февраля 23:59 || [https://contest.yandex.ru/contest/46195/standings контест_4] <br> Дедлайн - 15 февраля 23:59
 +
|-
 +
| 5 || [https://contest.yandex.ru/contest/46400/problems/ контест_5] <br> Дедлайн - 20 февраля 23:59 || [https://contest.yandex.ru/contest/46521/standings контест_5] <br> Дедлайн - 23 февраля 23:59 || [https://contest.yandex.ru/contest/46498/standings контест_5] <br> Дедлайн - 22 февраля 23:59
 +
|-
 +
| 6 || [https://contest.yandex.ru/contest/46703/problems/ контест_6] <br> Дедлайн - 6 марта 23:59 || [https://contest.yandex.ru/contest/47149/standings контест_6] <br> Дедлайн - 9 марта 23:59 || [https://contest.yandex.ru/contest/46879/standings контест_6] <br> Дедлайн - 9 марта 23:59
 +
|-
 +
| 7 || [https://contest.yandex.ru/contest/46997/problems/ контест_7] <br> Дедлайн - 13 марта 23:59 || [https://contest.yandex.ru/contest/47388/standings контест_7] <br> Дедлайн - 16 марта 23:59 || [https://contest.yandex.ru/contest/47473/problems/ контест_7] <br> Дедлайн - 22 марта 23:59
 +
|-
 +
| 8 || [https://contest.yandex.ru/contest/47472/problems/ контест_8] <br> Дедлайн - 20 марта 23:59 ||  ||
 +
|-
 +
| 9 || || ||
 +
|-
 +
|}
 +
 
 +
На исправление багов, на которые вам указал ассистент отводится 1 неделя после получения обратной связи.
 +
 
 +
===Большие задания===
 +
В больших заданиях должны быть решены все обязательные задачи, помеченные *. Правила оценивания описаны ниже. Итоговая оценка за задачу может быть снижена за кодстайл и оптимальность решения.
 +
 
 +
====1 Большое задание====
 +
1 большое задание находится по [https://contest.yandex.ru/contest/46013/problems/ ссылке]. Для получения положительной оценки за задание необходимо решить обязательные задачи (A-F).
 +
 
 +
Разбалловка по задачам выглядит следующим образом:
 +
 
 +
{| class="wikitable" style="text-align:center"
 +
|-
 +
! Задача !! A* || B-D* || E* || F* || G || H || I || J || K || L-O
 +
|-
 +
| Оценивание || 1 балл || 1 балл || 1 балл || 1 балл <br> + 0.5 балла за доп. часть || 1 балл || 1 балл || 1 балл ||  1 балл  <br> + 0.5 балла за доп. часть || 1 балл  <br> + 1 балл за доп. часть || 0 баллов
 +
|}
 +
 
 +
Дополнительные части не входят в обязательные для выполнения.
 +
 
 +
'''Дедлайн''' - 25 февраля 23:59
 +
 
 +
Если после дедлайна не были выполнены все обязательные задачи, то все необязательные задачи обнуляются, а обязательные задачи могут быть отправлены за неделю до экзамена.
 +
 
 +
На исправление багов, на которые вам указал ассистент отводится 1 неделя после получения обратной связи.
 +
 
 +
====2 Большое задание====
 +
2 большое задание находится по [https://contest.yandex.ru/contest/46314/problems/ ссылке]. Для получения положительной оценки за задание необходимо решить обязательные задачи (A, C, D).
 +
 
 +
Разбалловка по задачам выглядит следующим образом:
 +
 
 +
{| class="wikitable" style="text-align:center"
 +
|-
 +
! Задача !! A* || B || C* || D* || E || F || G || H || I || J
 +
|-
 +
| Оценивание || 2 балла || 1 балл || 1 балл  <br> + 1 балл за доп. часть || 1 балл <br> + 0.5 балла за доп. часть || 1 балл || 1 балл || 1 балл ||  1 балл  || 1.5 балла  || 1 балл
 +
|}
 +
 
 +
Дополнительные части не входят в обязательные для выполнения.
 +
 
 +
'''Дедлайн''' - 26 марта 23:59
 +
 
 +
После этого срока нельзя заслать больше никакие задачи.
 +
 
 +
== Правила пересдачи ==
 +
Пересдавать возможно только Большие ДЗ1-2 и Экзамен.
 +
Студенты, не сумевшие набрать 3,5 балла до конца семестра и/или решить необходимое количество задач в Больших ДЗ, могут получить оценку на пересдаче, дорешав необходимое количество задач из Больших ДЗ и/или пересдав экзамен.

Текущая версия на 03:30, 11 марта 2023

Основная информация

Курс читается на 1 курсе в 3 модуле и состоит из лекций и семинаров.

Каждую неделю на семинарах выдается Еженедельное задание по теме прошедшей лекции. Дедлайн - следующий семинар в вашей группе. Еженедельные задания нельзя сдавать после дедлайна. Но если были замечания на code-review и вы получили неполный балл за задачу, то можете переделать только их в течение недели после сообщения в Я.Контесте. После исправлений необходимо об этом написать своему семинаристу.

Кроме того, в течение семестра будут выданы 2 Больших задания, сроком на 2-3 недели. Большие ДЗ после дедлайна не проверяются. Большие ДЗ являются блокирующими. Для получения положительной оценки за курс необходимо, чтобы в каждом большом ДЗ были выполнены обязательные задачи (за полностью верное решение которых можно получить максимум 4 балла).

В конце семестра будет проведен экзамен.

За активность на семинаре будет выставлена оценка семинаристом.

Итоговая оценка за курс вычисляется по следующей формуле:

Oитоговая = min(10; 0,4*OЕженедельные ДЗ + 0,15*OБольшое ДЗ1 + 0,15*OБольшое ДЗ2 + 0,3*OЭкзамен + 0,1*OРабота на семинарах).

Таким образом, сумма коэффициентов больше 1, и набрать максимальный балл можно разными способами.

Округление арифметическое и осуществляется только для итоговой оценки.

Лекции и семинары

Группа КНАД221 КНАД222 ВСН22 ВСН23
Лекции Лектор Никулов С. А.
сб 13:00 - 16:00
Семинарист Чупов Д. Д.
чт 13:00 - 16:00
Федоров М. А.
ср 13:00 - 16:00
Горденко М. К.
пн 14:40 - 17:40
Горденко М. К.
пн 18:00 - 21:00
Ассистенты Иванов П. А. Блинов И. И. Иванов П. А. Блинов И. И.

Материалы

Все ссылки на материалы и записи находятся в закрепленных сообщениях в Телеграмме. По вопросам доступа к ним пишите лектору.

План курса

Дата Тема
1 14.01 Введение C++ и базовые конструкции
2 21.01 Указатели, ссылки, массивы и начало функций
3 28.01 С-строки, функции и начало ООП
4 04.02 Поля и методы, шаблоны и конструктор
5 11.02 Деструктор, сборка программ на С++
6 18.02 Функторы и контейнеры
7 25.02 Библиотека алгоритмов, наследование
8 04.03 Полиморфизм, исключения
9 11.03 Move семантика -
10 18.03 Итераторы и умные указатели

Ведомость

Ведомость находится по ссылке

Контесты

Для доступа к контекстам необходимо оставить свой логин в ведомости.

Если у вас не открывается, то добавьте в начале ссылки official.

Еженедельные контесты

ВСН КНАД221 КНАД222
1 контест_1
Дедлайн - 23 января 23:59
контест_1
Дедлайн - 26 января 23:59
контест_1
Дедлайн - 25 января 23:59
2 контест_2
Дедлайн - 30 января 23:59
контест_2
Дедлайн - 2 февраля 23:59
контест_2
Дедлайн - 1 февраля 23:59
3 контест_3
Дедлайн - 6 февраля 23:59
контест_3
Дедлайн - 9 февраля 23:59
контест_3
Дедлайн - 8 февраля 23:59
4 контест_4
Дедлайн - 13 февраля 23:59
контест_4
Дедлайн - 16 февраля 23:59
контест_4
Дедлайн - 15 февраля 23:59
5 контест_5
Дедлайн - 20 февраля 23:59
контест_5
Дедлайн - 23 февраля 23:59
контест_5
Дедлайн - 22 февраля 23:59
6 контест_6
Дедлайн - 6 марта 23:59
контест_6
Дедлайн - 9 марта 23:59
контест_6
Дедлайн - 9 марта 23:59
7 контест_7
Дедлайн - 13 марта 23:59
контест_7
Дедлайн - 16 марта 23:59
контест_7
Дедлайн - 22 марта 23:59
8 контест_8
Дедлайн - 20 марта 23:59
9

На исправление багов, на которые вам указал ассистент отводится 1 неделя после получения обратной связи.

Большие задания

В больших заданиях должны быть решены все обязательные задачи, помеченные *. Правила оценивания описаны ниже. Итоговая оценка за задачу может быть снижена за кодстайл и оптимальность решения.

1 Большое задание

1 большое задание находится по ссылке. Для получения положительной оценки за задание необходимо решить обязательные задачи (A-F).

Разбалловка по задачам выглядит следующим образом:

Задача A* B-D* E* F* G H I J K L-O
Оценивание 1 балл 1 балл 1 балл 1 балл
+ 0.5 балла за доп. часть
1 балл 1 балл 1 балл 1 балл
+ 0.5 балла за доп. часть
1 балл
+ 1 балл за доп. часть
0 баллов

Дополнительные части не входят в обязательные для выполнения.

Дедлайн - 25 февраля 23:59

Если после дедлайна не были выполнены все обязательные задачи, то все необязательные задачи обнуляются, а обязательные задачи могут быть отправлены за неделю до экзамена.

На исправление багов, на которые вам указал ассистент отводится 1 неделя после получения обратной связи.

2 Большое задание

2 большое задание находится по ссылке. Для получения положительной оценки за задание необходимо решить обязательные задачи (A, C, D).

Разбалловка по задачам выглядит следующим образом:

Задача A* B C* D* E F G H I J
Оценивание 2 балла 1 балл 1 балл
+ 1 балл за доп. часть
1 балл
+ 0.5 балла за доп. часть
1 балл 1 балл 1 балл 1 балл 1.5 балла 1 балл

Дополнительные части не входят в обязательные для выполнения.

Дедлайн - 26 марта 23:59

После этого срока нельзя заслать больше никакие задачи.

Правила пересдачи

Пересдавать возможно только Большие ДЗ1-2 и Экзамен. Студенты, не сумевшие набрать 3,5 балла до конца семестра и/или решить необходимое количество задач в Больших ДЗ, могут получить оценку на пересдаче, дорешав необходимое количество задач из Больших ДЗ и/или пересдав экзамен.