Проекты, выполнение которых достаточно для получения
оценки "отлично" на экзамене
Задачи на модификацию проекта "Простой компилятор"
(SimpComp.tgz)
-
Добавить стандартные функции
(Гуляев Олег).
-
Загрузка промежуточного кода из файла и исполнение его
интерпретатором
(Рябинин Андрей).
-
Добавить в язык функции и их вызов, а также глобальные переменные
(Давиденко Иван).
-
Добавить в язык структуры
(Бобух Антон).
-
Добавить в язык цикл "for", инициализацию переменных при их описании,
операции увеличения и уменьшения, операции +=, -=, *=, /= и
стандартные функции
(Кондрашов Кирилл).
-
Добавить в язык метки, оператор goto и оператор switch.
Другие задачи
Во всех задачах требуется реализовать программу (на C++ или C#),
которая читает исходные данные (например, запись
контекстно-свободной грамматики) из входного файла и записывает
результат в выходной файл.
-
Построить систему состояний LR(0)-разбора для заданной
контекстно-свободной грамматики
(Костиков Андрей).
-
Преобразовать контекстно-свободную грамматику к нормальной
форме Хомского
(Павлов Никита).
-
Построить КС-грамматику для пересечения КС-языка и автоматного
языка (входными данными являются файл с записью грамматики и
файл с записью конечного автомата)
(Ветров Василий).
-
Преобразовать КС-грамматику для устранения левой рекурсии
(Репин Павел).