Создан заказ №2218703
31 июля 2017
Теория языков программирования и методы трансляции
Как заказчик описал требования к работе:
Язык С#
Лабораторная работа №2, вариант №4.
---
На вход программы подаются два текстовых
файла (с именами GRAMMAR.TXT и INPUT.TXT). Первый содержит LR(1)-грамматику, второй — описание структуры (записи) на выбранном языке (Pascal, C++, C#). Необходимо проверить, является ли описание структуры корре
ктным с точки зрения заданной грамматики и не содержатся ли в нем конфликты имен.
Таким образом, задание разбивается на две части:
1. Проверка синтаксиса.
2. Проверка семантики.
Семантика зависит от выбранного языка, и поэтому ее проверка жестко привязана к анализатору (в данном случае — Вашей программе). Грамматика же должна быть универсальной, т.е. должна позволять задавать любые правила для разбора структуры (и не только структуры). Например, должны быть доступны изменения: ключевых слов, знаков пунктуации, правил разбора идентификаторов, а также добавление новых языковых конструкций и т.п.
Программа должна проанализировать имеющееся в текстовом файле описание структуры и выдать (в текстовый файл
OUTPUT.TXT) результат проверки. Это может быть:
1. Сообщение о том, что грамматика во входном файле не является LR(1)-грамматикой.
2. Сообщение о том, что описание корректное.
3. Сообщение о синтаксической ошибке. Указывать тип ошибки не обязательно, требуется только указать строку и позицию в строке входного файла, где наблюдается ошибка. Достаточно находить только первую ошибку в описании.
4. Сообщение о конфликте имен. В этом случае на выходе программы необходимо указать конфликтующее имя, а также строку и позицию в строке, где произошел конфликт.
подробнее
Заказчик
заплатил
заплатил
200 ₽
Заказчик не использовал рассрочку
Гарантия сервиса
Автор24
Автор24
20 дней
Заказчик принял работу без использования гарантии
1 августа 2017
Заказ завершен, заказчик получил финальный файл с работой
5
Теория языков программирования и методы трансляции.jpg
2020-12-13 19:39
Последний отзыв студента о бирже Автор24
Общая оценка
4.2
Положительно
Работа выполненна быстро и качественно. Исполнитель ответил на все интересующие вопросы. Рекомендую)