Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. вариант 17
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Программа для просмотра текстовых файлов
- Microsoft Word
Описание
1. Задание
Написать программу для автоматического приведения заданной контекстно-свободной грамматики (КС-грамматики) к нормальной форме Хомского (БНФ).
Вход программы: терминальный и нетерминальный алфавиты грамматики, целевой символ, правила грамматики, 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика в БНФ (все 4 элемента), результат генерации цепочек по обеим грамматикам.
Подробно:
Язык задан КС-грамматикой, причём для приведения к БНФ она должна находиться в каноническом виде (раздел лекций 3.2.2). Приводить её к этому виду не требуется, достаточно только проверить корректность задания – действительно ли исходная грамматика находится в каноническом виде – и при отрицательном результате выдать соответствующее сообщение. Причём в этом сообщении должны быть конкретно указаны причины, почему именно грамматика не имеет канонического вида (например: «в грамматике присутствуют цепные правила: А→С», или «в грамматике присутствует недостижимый символ: В»). Для того чтобы в исходной грамматике можно было использовать пустое правило, необходимо либо предусмотреть поле ввода для символа, которым обозначается пустая цепочка, либо дать пояснения пользователю, как именно ему следует задавать пустое правило.
Программа должна:
1. проверить заданную КС-грамматику – находится ли она в каноническом виде и при отрицательном результате выдать сообщение;
2. привести заданную КС-грамматику к нормальной форме Хомского (раздел 3.3.1);
3. проверить построенную грамматику (БНФ) на эквивалентность исходной.
Для проверки построенной грамматики в БНФ на эквивалентность исходной по обеим грамматикам следует сгенерировать множества всех цепочек в заданном пользователем диапазоне длин и проверить эти множества на идентичность. При обнаружении несовпадения должна выдаваться диагностика различий – где именно несовпадения и в чём они состоят. Для удобства сравнения множества цепочек необходимо упорядочить, цепочки перенумеровать, для генерации цепочек по каждой грамматике сделать отдельную кнопку. Следует предусмотреть возможность многократного изменения диапазона длин цепочек и повторной их генерации для новых значений длины.
Приведение КС-грамматики к нормальной форме Хомского следует осуществлять согласно алгоритму, изложенному в лекционном материале (раздел 3.3.1).
2. Описание алгоритма решения задачи
Сначала множество нетерминальных символов новой грамматики строится на основе множества нетерминальных символов исходной грамматики: VN'=VN.
Затем алгоритм работает с правилами P исходной грамматики и в зависимости от их вида строит множество правил P' и пополняет множество нетерминальных символов VN'.
1. Правила вида A→a, A→BC, S→λ, где A, B, C∈VN, a∈VT, переносятся во множество P' без изменений.
2. Если встречается правило вида (A→aB)∈P, где A, B∈VN, a∈VT, то во множество правил P' добавляются правила A→<AaB>B и <AaB>→a, а новый символ <AaB> добавляется во множество нетерминальных символов VN'.
3. Если встречается правило вида (A→Ba)∈P, выполняется аналогичное действие: во множество правил P' добавляются правила A→B<ABa> и <ABa>→a, а новый символ <ABa> добавляется во множество нетерминальных символов VN'.
4. Если встречается правило вида (A→ab)∈P, где A∈VN, a, b∈VT, то во множество правил P' добавляются правила A→<Aa><Ab> и <Aa>→a, <Ab>→b, а новые символы <Aa>, <Ab> добавляются во множество нетерминальных символов VN'.
5. Если встречается правило вида (A→X1X2...Xk)∈P, где k>2, A∈VN, ∀i Xi∈VT∪VN, то во множество правил P' добавляются правила
A→X1'<X2'...Xk'>,
<X2'...Xk'>→X2'<X3'...Xk'>,
...
<Xk–1'Xk'>→Xk–1'Xk',
где все новые нетерминальные символы <...> добавляются во множество нетерминальных символов VN'. Что касается символов Xi', то их вид зависит от того, чем являлся исходный символ Xi. Если для некоторого i Xi∈VN, то Xi'≡Xi∈VN'; если Xi∈VT, то Xi' – новый нетерминальный символ, т.е. Xi'∈VN' и в P' нужно добавить правило Xi'→Xi.
Написать программу для автоматического приведения заданной контекстно-свободной грамматики (КС-грамматики) к нормальной форме Хомского (БНФ).
Вход программы: терминальный и нетерминальный алфавиты грамматики, целевой символ, правила грамматики, 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика в БНФ (все 4 элемента), результат генерации цепочек по обеим грамматикам.
Подробно:
Язык задан КС-грамматикой, причём для приведения к БНФ она должна находиться в каноническом виде (раздел лекций 3.2.2). Приводить её к этому виду не требуется, достаточно только проверить корректность задания – действительно ли исходная грамматика находится в каноническом виде – и при отрицательном результате выдать соответствующее сообщение. Причём в этом сообщении должны быть конкретно указаны причины, почему именно грамматика не имеет канонического вида (например: «в грамматике присутствуют цепные правила: А→С», или «в грамматике присутствует недостижимый символ: В»). Для того чтобы в исходной грамматике можно было использовать пустое правило, необходимо либо предусмотреть поле ввода для символа, которым обозначается пустая цепочка, либо дать пояснения пользователю, как именно ему следует задавать пустое правило.
Программа должна:
1. проверить заданную КС-грамматику – находится ли она в каноническом виде и при отрицательном результате выдать сообщение;
2. привести заданную КС-грамматику к нормальной форме Хомского (раздел 3.3.1);
3. проверить построенную грамматику (БНФ) на эквивалентность исходной.
Для проверки построенной грамматики в БНФ на эквивалентность исходной по обеим грамматикам следует сгенерировать множества всех цепочек в заданном пользователем диапазоне длин и проверить эти множества на идентичность. При обнаружении несовпадения должна выдаваться диагностика различий – где именно несовпадения и в чём они состоят. Для удобства сравнения множества цепочек необходимо упорядочить, цепочки перенумеровать, для генерации цепочек по каждой грамматике сделать отдельную кнопку. Следует предусмотреть возможность многократного изменения диапазона длин цепочек и повторной их генерации для новых значений длины.
Приведение КС-грамматики к нормальной форме Хомского следует осуществлять согласно алгоритму, изложенному в лекционном материале (раздел 3.3.1).
2. Описание алгоритма решения задачи
Сначала множество нетерминальных символов новой грамматики строится на основе множества нетерминальных символов исходной грамматики: VN'=VN.
Затем алгоритм работает с правилами P исходной грамматики и в зависимости от их вида строит множество правил P' и пополняет множество нетерминальных символов VN'.
1. Правила вида A→a, A→BC, S→λ, где A, B, C∈VN, a∈VT, переносятся во множество P' без изменений.
2. Если встречается правило вида (A→aB)∈P, где A, B∈VN, a∈VT, то во множество правил P' добавляются правила A→<AaB>B и <AaB>→a, а новый символ <AaB> добавляется во множество нетерминальных символов VN'.
3. Если встречается правило вида (A→Ba)∈P, выполняется аналогичное действие: во множество правил P' добавляются правила A→B<ABa> и <ABa>→a, а новый символ <ABa> добавляется во множество нетерминальных символов VN'.
4. Если встречается правило вида (A→ab)∈P, где A∈VN, a, b∈VT, то во множество правил P' добавляются правила A→<Aa><Ab> и <Aa>→a, <Ab>→b, а новые символы <Aa>, <Ab> добавляются во множество нетерминальных символов VN'.
5. Если встречается правило вида (A→X1X2...Xk)∈P, где k>2, A∈VN, ∀i Xi∈VT∪VN, то во множество правил P' добавляются правила
A→X1'<X2'...Xk'>,
<X2'...Xk'>→X2'<X3'...Xk'>,
...
<Xk–1'Xk'>→Xk–1'Xk',
где все новые нетерминальные символы <...> добавляются во множество нетерминальных символов VN'. Что касается символов Xi', то их вид зависит от того, чем являлся исходный символ Xi. Если для некоторого i Xi∈VN, то Xi'≡Xi∈VN'; если Xi∈VT, то Xi' – новый нетерминальный символ, т.е. Xi'∈VN' и в P' нужно добавить правило Xi'→Xi.
Дополнительная информация
Оценка: Отлично
Дата оценки: 15.05.2022
Помогу с вашим онлайн тестом, другой работой или дисциплиной.
E-mail: sneroy20@gmail.com
E-mail: ego178@mail.ru
Дата оценки: 15.05.2022
Помогу с вашим онлайн тестом, другой работой или дисциплиной.
E-mail: sneroy20@gmail.com
E-mail: ego178@mail.ru
Похожие материалы
Курсовая работа по дисциплине Теория языков программирования и методы трансляции
Некто
: 16 сентября 2018
Написать программу для автоматического построения детерминированного конечного автомата (ДКА) по словесному описанию языка.
Вход программы: алфавит языка, обязательная конечная подцепочка, цепочки для распознавания.
Выход: построенный ДКА (все 5 элементов), результат проверки цепочек.
Подробно:
Язык задан своим алфавитом, обязательной конечной цепочкой всех цепочек языка. В конечной цепочке не должно находиться символов, не содержащихся в алфавите. В край
200 руб.
Теория языков программирования и методы трансляции. Контрольная работа. Вариант №17
Doctor_Che
: 19 января 2013
No1 Пусть регулярный язык задан своим описанием:
Множество всех цепочек из {0,1,a}*, заканчивающихся цепочкой ’a1’ и содержащих чётное количество нулей. Например, ‘a1’, ‘00a1’, ‘010a1’ и т.п.
No2 Построить регулярную грамматику, задающую язык из задачи No1.
No3 Построить КС-грамматику, задающую язык из задачи No1. Сгенерировать две цепочки языка по построенной грамматике. Процесс генерации цепочек языка записать в виде цепочки вывода, указывая номера применённых правил (или сами правила, как
1300 руб.
Теория языков программирования и методы трансляции
Илья272
: 5 ноября 2023
Лабораторные работы основаны на лекционном материале; каждая выполняется после изучения соответствующего теоретического раздела. До выполнения лабораторной работы нужно внимательно разобраться с примерами, ответить на контрольные вопросы изученного теоретического раздела, а также решить задачи, предлагаемые в составе контрольных вопросов.
Каждая работа снабжена методическими указаниями, сопровождающими текст задания. Рекомендуется внимательно читать задание и выполнять работу в строгом соответс
1300 руб.
Теория языков программирования и методы трансляции
piligrim-24
: 11 апреля 2012
Билет No1
1) Классификация грамматик и языков по Хомскому. Проиллюстрировать на примерах (примеры должны быть свои).
2) Нисходящий распознаватель языков с возвратами. Алгоритм распознавателя с подбором альтернатив. Проиллюстрировать на примере (пример должен быть свой).
3) Построить детерминированный автомат с магазинной памятью P (с опустошением стека), допускающий язык L(P) = {a n b n c 2k k > 0, n 0}. Построить КС-грамматику для задания этого же языка.
50 руб.
Теория языков программирования и методы трансляции
piligrim-24
: 3 марта 2012
Лабораторная работа № 3
По дисциплине «Теория языков программирования и методы трансляции»
Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный авт
50 руб.
Курсовая работа По дисциплине: Теория языков программирования и методы трансляции. Вариант 3
alexadubinina
: 20 ноября 2024
Задание на курсовую работу.
Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка.
Вход программы: алфавит языка, обязательная начальная подцепочка, выбранный символ алфавита, его кратность (натуральное число), 2 числа – диапазон длин для генерации цепочек.
Выход: построенное регулярное выражение, результат генерации цепочек.
Подробно:
Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности вхождений некоторого символа
800 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №10*
IT-STUDHELP
: 6 июля 2023
Курсовая работа
Вариант №10
Постановка задачи
Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка.
Вход программы: алфавит языка, обязательная конечная подцепочка, кратность длины всех цепочек языка, тип грамматики (ЛЛ либо ПЛ), 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика (все 4 элемента), результат генерации цепочек.
Подробно:
Язык задан своим алфавитом, обязательной конечной п
800 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №10
IT-STUDHELP
: 6 июля 2023
Курсовая работа
цифры 20 (вар 10)
Постановка задачи
Тема: «Программа для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка»
Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка.
Язык задан своим алфавитом, обязательной конечной подцепочкой, которая должна присутствовать во всех цепочках языка, и указанием кратности длины всех цепочек языка. В конечной ц
800 руб.
Другие работы
Гидравлика ИжГТУ 2007 Задача 2.2 Вариант 11
Z24
: 24 октября 2025
Вода с плотностью ρ=1000 кг/м³ вытесняется из сосуда сжатым воздухом под избыточным давлением роизб; затем она проходит по трубе с внутренним диаметром D и выбрасывается в атмосферу вертикально через отверстие диаметром d, образуя фонтан.
Учесть только путевые потери в трубе. Коэффициент сопротивления трения равен λ.
При движении струи в воздухе гидравлическими потерями пренебречь.
Величина атмосферного давления ра=1,013·105 Па.
Найти:
а) высоту фонтана Нф;
б) расход вытекающей
250 руб.
Физика. 16 задач
vladslad
: 23 ноября 2018
Задача 2
Грузы с массами m1 = 0,20 кг и m2 = 0,40 кг соединены нитью и расположены так, как показано на рисунке 1. Вся система грузов находится в лифте, который движется вверх с ускорением а = 5,0 м/с2. Определить силу Т натяжения нити, если μ = 0,3 – коэффициент трения между грузом m1 и столом. Массами нити и блока пренебречь.
Задача 3
Тело массой m = 1,5 кг проходит путь S, зависящий от времени t согласно уравнению S = A – Bt + Ct2 – Dt3 (A = 1,0 м, B= 5,0 м/c, С= 3,0 м/с2, D = 2,0 м/с3). Опр
500 руб.
Термодинамический цикл 4 Вариант 20
Z24
: 30 сентября 2025
Определить:
1 Параметры в характерных точках цикла р, υ, Т.
2 Средние массовые теплоемкости в процессах цикла.
3 Термодинамическую l и потенциальную работу ω, теплоту q, изменение внутренней энергии Δu, энтальпии Δh и энтропии ΔS в процессах цикла, работу цикла lц,термический к.п.д. цикла ηt.
4 Построить цикл в координатах P-V и T-S.
800 руб.
Схема контроля и автоматики центробежного насосного агрегата ЦН50-Плакат-Картинка-Фотография-Чертеж-Оборудование для добычи и подготовки нефти и газа-Курсовая работа-Дипломная работа-Машины и оборудование нефтяных и газовых промыслов-Технологические машин
leha.nakonechnyy.92@mail.ru
: 19 декабря 2017
Схема контроля и автоматики центробежного насосного агрегата ЦН50-Плакат-Картинка-Фотография-Чертеж-Оборудование для добычи и подготовки нефти и газа-Курсовая работа-Дипломная работа-Машины и оборудование нефтяных и газовых промыслов-Технологические машины и оборудование-Формат Picture-Jpeg
186 руб.