Программирование, группа 8205, первый семестр

Семестровые задания

Задания по основным темам сдаются в течение семестра. Необходимо сдать как минимум 15 из 20 заданий (на «тройку»), для «пятёрки» нужно сдать все задания.
Файл с текстами задач: pdf.

Дополнительная информация

  1. Программа PuTTY выложена для желающих заходить на сервер из дома.
  2. info.fenster.name — попытка собрать воедино большое количество информации, подготовленной для студентов разных лет.

Литература

  1. Первоисточник — Б. Керниган, Д. Ричи. Язык C. Первое издание этой книги легко ищется в гугле по фамилиям авторов, но там использован старый синтаксис описания функций. Новое издание можно купить в бумажном виде в книжном магазине (около 400 рублей в «Книгомире» в ТЦ).
  2. Ходите на лекции и пишите.

Для открытия формата pdf можно использовать программу Adobe Reader.

Преподаватель

Александр Геннадьевич Фенстер
fenster@fenster.name (туда можно слать письма)
+7 913 9053295
ICQ: 9043584
Jabber: alexander.fenster@gmail.com (это джаббер! почту туда слать не надо, не прочитаю).

Пятиминутки с семинаров

На каждом семинаре проводится небольшая проверочная работа, так называемая «пятиминутка». Для получения зачёта необходимо, чтобы за каждую пятиминутку стояла оценка «+» или «±». Здесь будут выкладываться условия задач из пятиминуток.

  1. Функции, простые циклы, рекурсия. Пятиминутка, план семинара.
    Внимание: при использовании функций из math.h в Linux при компиляции нужно указывать дополнительный параметр: make имя_файла LDFLAGS=-lm.
  2. Указатели, одномерные массивы, передача массивов в функции. Бинарный поиск, понятие временной сложности алгоритмов. Пятиминутка, план семинара.
  3. Строки и функции для работы с ними. Файлы, функции ввода-вывода. Пятиминутка, план семинара.
  4. Строки (продолжение). Случайные числа. Дополнительный код. Пятиминутка, план семинара.
  5. Ветвящаяся рекурсия. Генерация подмножеств, разложение на множители, перестановки. Пятиминутка, план семинара.
  6. Разбор строк и конечные автоматы. Сортировки: простые сортировки, пирамидальная сортировка. Пятиминутка, план, сортировки.
  7. Быстрая сортировка. Динамическая память, выделение и освобождение памяти. Пятиминутка, план, функции работы с динамической памятью.
  8. Структуры. Списки. Работа со списками. Пятиминутка, план, совсем чуть-чуть про списки.
  9. Задачи на списки. Хэш-таблицы. Пятиминутка, план. Информация о хэш-таблицах есть в файле с семестровыми задачами.
  10. Стеки и очереди. Алгоритм преобразования выражения из инфиксной формы в постфиксную и вычисление значения выражения. Бинарные деревья, рекурсивная обработка дерева. Пятиминутка, план, вычисление значения выражения.
  11. Обходы дерева. Скобочная запись дерева. Деревья поиска. Пятиминутка, план, информация о деревьях.
  12. Графы. Представление графов в программе, топологическая сортировка, обходы. Пятиминутка, план, обходы графа, топологическая сортировка.
  13. Графы. Перебор всех путей. Кратчайшие пути: алгоритм Дейкстры. Пятиминутка, план, алгоритмы поиска кратчайших путей.
  14. Графы. Различные задачи. Пятиминутка, план.
  15. Зачёт.

Сданные задачи

# Фамилия, имя  1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20  Итого
Зачёт
1
Бердов Валерий
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
+
+
19
хорошо
2
Добросельский Максим
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
3
Задворнов Дмитрий
+
+
+
+
+
+
+
+
+
+
+
 
+
+
+
+
 
 
 
+
16
удовл
4
Кашкута Игорь
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
5
Леваев Александр
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
6
Мокшин Павел
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
7
Парамонова Елена
+
+
+
+
+
+
+
 
+
 
 
 
+
 
 
 
 
 
 
 
9
неявка
8
Полунин Денис
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
9
Поляков Дмитрий
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
10
Рыжененков Максим
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
11
Сенцов Евгений
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
12
Скворцов Максим
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
20
отлично
13
Шопин Ярослав
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
+
 
 
 
+
15
удовл

Гистограмма

Результаты пятиминуток

# Фамилия, имя  1   2   3   4   5   6   7   8   9   10   11   12   13   14  Итого
1
Бердов Валерий
+
±
±
+
+
±
±
±
±
+
+
+
+
+
8/6/0/0
2
Добросельский Максим
+
+
+
+
+
+
±
+
±
+
+
+
+
±
11/3/0/0
3
Задворнов Дмитрий
±
+
±
±
+
±
+
±
+
+
±
+
+
+
8/6/0/0
4
Кашкута Игорь
+
+
±
±
+
+
±
+
±
+
+
+
+
+
10/4/0/0
5
Леваев Александр
+
+
+
+
+
+
+
+
+
+
+
+
+
+
14/0/0/0
6
Мокшин Павел
+
+
+
+
±
+
±
+
±
±
+
+
+
+
10/4/0/0
7
Парамонова Елена
+
н
+
±
+
+
±
н
н
н
н
н
н
н
4/2/0/8
8
Полунин Денис
+
±
+
±
+
±
+
±
±
+
+
+
+
+
9/5/0/0
9
Поляков Дмитрий
+
+
+
+
+
+
±
+
+
+
+
+
+
+
13/1/0/0
10
Рыжененков Максим
±
+
±
+
+
±
±
+
±
+
+
+
+
±
8/6/0/0
11
Сенцов Евгений
+
+
±
±
+
±
±
+
+
+
+
+
+
+
10/4/0/0
12
Скворцов Максим
+
+
+
+
+
+
±
+
+
+
+
+
+
+
13/1/0/0
13
Шопин Ярослав
+
+
±
±
+
+
+
+
+
+
+
+
+
±
11/3/0/0