Лабораторная работа №3 «Интерпретирование простых регулярных выражений и построение лексических анализаторов»

Цели работы: проектирование и реализация простых интерпретаторов
Варианты заданий:
а) Для грамматики G( { a,b,c,+,-,*,/,(,) }, {S,T,F}, P, S )
P:
S → S+T | S-T | T
T → T*F | T/E | F
F → (S) | a | b | c
(или эквивалентной ей грамматики) реализовать распознаватель задаваемых арифметических выражений с одновременным построением соответствующего выражения в постфиксной форме (су- компиляция). Используя заданные пользователем значения переменных a,b,c вычислить значение выражения, применяя стековую организацию
б) По исходному тексту программы нарисовать ее блок-схему.
в) Реализовать лексический анализатор. Составить таблицу лексем. Составить таблицу идентификаторов, построенную методом бинарных деревьев
г) Реализовать лексический анализатор. Составить таблицу лексем. Составить таблицу идентификаторов, построенную методом хеш-функции
д) Реализовать лексический анализатор. Составить таблицу лексем. Составить таблицу идентификаторов, построенную методом цепочек (хеш функций)


На выполнение работы дается 6 часов


Информацию о самом курсе можно посмотреть здесь: Теория языков программирования