Написать программу для автоматического построения грамматики, эквивалентной заданному регулярному выражению
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Программа для просмотра текстовых файлов
- Microsoft Word
Описание
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант No6
Вариант 6
Задание:
Написать программу для автоматического построения грамматики, эк-вивалентной заданному регулярному выражению (РВ).
Вход программы: регулярное выражение в виде строки символов, 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика (все 4 элемента), результат генерации цепочек.
Подробно:
Язык задан регулярным выражением. При его записи могут быть ис-пользованы символы алфавита языка, а также: «+» (выбор одного из слага-емых), круглые скобки, «*» для обозначения итерации.
Программа должна:
1. по предложенному регулярному выражению строить эквивалентную грамматику, генерирующую этот же язык, в том виде, как она рассматрива-лась в теории, раздел 1.3.1;
2. с помощью построенной грамматики генерировать все цепочки язы-ка в заданном пользователем диапазоне длин.
Грамматика может строиться любая – контекстно-свободная или регу-лярная, по выбору разработчика. Отдельно следует указывать, какой нетер-минальный символ является целевым. Если в грамматике используется пу-стое правило, то необходимо дать пояснение, каким именно символом обо-значается пустая цепочка.
После построения грамматики пользователь может убедиться в её пра-вильности путём генерации всех цепочек языка в том диапазоне длин, ко-торый он задаст. Генерацию каждой цепочки языка следует поэтапно отоб-ражать на экране в виде цепочки вывода (в соответствии с примерами раз-дела 1.4.1.). Генерация осуществляется в соответствии с лабораторной ра-ботой No1.
Описание алгоритма решения задачи с иллюстрацией его на сво-ём примере.
1. На вход программы подаётся регулярное выражение.
2. Производится разбор регулярного выражения:
1. Каждая скобка обозначается своим нетерминалом.
2. Если на скобке стоит звёздочка (итерация), значит, на этом нетер-минале будет явная рекурсия и пустое правило.
3. Если в выражении стоит «+», то это означает альтернативу в пра-вилах.
3. Вывод результата в виде КС-грамматики.
============================================
Вариант 6
Задание:
Написать программу для автоматического построения грамматики, эк-вивалентной заданному регулярному выражению (РВ).
Вход программы: регулярное выражение в виде строки символов, 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика (все 4 элемента), результат генерации цепочек.
Подробно:
Язык задан регулярным выражением. При его записи могут быть ис-пользованы символы алфавита языка, а также: «+» (выбор одного из слага-емых), круглые скобки, «*» для обозначения итерации.
Программа должна:
1. по предложенному регулярному выражению строить эквивалентную грамматику, генерирующую этот же язык, в том виде, как она рассматрива-лась в теории, раздел 1.3.1;
2. с помощью построенной грамматики генерировать все цепочки язы-ка в заданном пользователем диапазоне длин.
Грамматика может строиться любая – контекстно-свободная или регу-лярная, по выбору разработчика. Отдельно следует указывать, какой нетер-минальный символ является целевым. Если в грамматике используется пу-стое правило, то необходимо дать пояснение, каким именно символом обо-значается пустая цепочка.
После построения грамматики пользователь может убедиться в её пра-вильности путём генерации всех цепочек языка в том диапазоне длин, ко-торый он задаст. Генерацию каждой цепочки языка следует поэтапно отоб-ражать на экране в виде цепочки вывода (в соответствии с примерами раз-дела 1.4.1.). Генерация осуществляется в соответствии с лабораторной ра-ботой No1.
Описание алгоритма решения задачи с иллюстрацией его на сво-ём примере.
1. На вход программы подаётся регулярное выражение.
2. Производится разбор регулярного выражения:
1. Каждая скобка обозначается своим нетерминалом.
2. Если на скобке стоит звёздочка (итерация), значит, на этом нетер-минале будет явная рекурсия и пустое правило.
3. Если в выражении стоит «+», то это означает альтернативу в пра-вилах.
3. Вывод результата в виде КС-грамматики.
============================================
Другие работы
Курсовая работа. Направляющие Системы Электросвязи
Алиса8
: 20 декабря 2016
Курсовая работа
Предмет:Направляющие Системы Электросвязи
Вариант 27 (выбирали по списку в журнале)
Тема:Проектирование магистральной ВОЛП на участке Саратов – Тамбов
1000 руб.
Дробилка молотковая
Hobbit
: 27 марта 2016
Дробилка молотковая ДМ предназначена для дробления кусковых промышленных материалов (глина, бой керамической плитки, кирпича и др.) с целью использования полученной массы при производстве строительных материалов. Применяется на предприятиях-изготовителях строительных материалов в комплексе с другим оборудованием. Общий вид и полная деталировка
100 руб.
Муфта фрикционная
vermux1
: 15 ноября 2017
Фрикционная муфта применяется в приводных установках и служит для ограничения передаваемого крутящего момента. В случае превышения крутящего момента в передаваемой цепи происходит прокручивание в дисках, что приводит к остановке одной из полумуфт, а следовательно, к прекращению передачи крутящего момента. Это позволяет избежать поломки оборудования или одного из звеньев приводной системы.
25.000 СБ_Муфта фрикционная
25.000 СП_Муфта фрикционная
25.001_Полумуфта
25.001_Полумуфта аксонометрия
25.
170 руб.
Проектирование производственного здания
DocentMark
: 6 ноября 2011
Клеефанерная плита покрытия 4
Треугольная ферма на врубках 8
Дощато-клееная стойка однопролётного здания 16
Дощато-клееная фахверковая колонна однопролётного здания 23
Список используемой литературы 26
45 руб.