Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. вариант 17

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon InputFile1.txt
material.view.file_icon InputFile2.txt
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon .dtbcache.v2
material.view.file_icon
material.view.file_icon .futdcache.v1
material.view.file_icon .suo
material.view.file_icon
material.view.file_icon AboutBox1.cs
material.view.file_icon AboutBox1.Designer.cs
material.view.file_icon AboutBox1.resx
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon KRv7.deps.json
material.view.file_icon KRv7.dll
material.view.file_icon KRv7.exe
material.view.file_icon KRv7.pdb
material.view.file_icon KRv7.runtimeconfig.json
material.view.file_icon
material.view.file_icon
material.view.file_icon KRv7.deps.json
material.view.file_icon KRv7.dll
material.view.file_icon KRv7.exe
material.view.file_icon KRv7.pdb
material.view.file_icon KRv7.runtimeconfig.json
material.view.file_icon BNF.cs
material.view.file_icon CFG.cs
material.view.file_icon Form1.cs
material.view.file_icon Form1.Designer.cs
material.view.file_icon Form1.resx
material.view.file_icon KRv7.csproj
material.view.file_icon KRv7.csproj.user
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon .NETCoreApp,Version=v6.0.AssemblyAttributes.cs
material.view.file_icon apphost.exe
material.view.file_icon KRv7.AboutBox1.resources
material.view.file_icon KRv7.AssemblyInfo.cs
material.view.file_icon KRv7.AssemblyInfoInputs.cache
material.view.file_icon KRv7.assets.cache
material.view.file_icon KRv7.csproj.AssemblyReference.cache
material.view.file_icon KRv7.csproj.CoreCompileInputs.cache
material.view.file_icon KRv7.csproj.FileListAbsolute.txt
material.view.file_icon KRv7.csproj.GenerateResource.cache
material.view.file_icon KRv7.designer.deps.json
material.view.file_icon KRv7.designer.runtimeconfig.json
material.view.file_icon KRv7.dll
material.view.file_icon KRv7.Form1.resources
material.view.file_icon KRv7.GeneratedMSBuildEditorConfig.editorconfig
material.view.file_icon KRv7.genruntimeconfig.cache
material.view.file_icon KRv7.GlobalUsings.g.cs
material.view.file_icon KRv7.pdb
material.view.file_icon
material.view.file_icon KRv7.dll
material.view.file_icon
material.view.file_icon KRv7.dll
material.view.file_icon KRv7.csproj.nuget.dgspec.json
material.view.file_icon KRv7.csproj.nuget.g.props
material.view.file_icon KRv7.csproj.nuget.g.targets
material.view.file_icon project.assets.json
material.view.file_icon project.nuget.cache
material.view.file_icon
material.view.file_icon
material.view.file_icon .NETCoreApp,Version=v6.0.AssemblyAttributes.cs
material.view.file_icon apphost.exe
material.view.file_icon KRv7.AboutBox1.resources
material.view.file_icon KRv7.AssemblyInfo.cs
material.view.file_icon KRv7.AssemblyInfoInputs.cache
material.view.file_icon KRv7.assets.cache
material.view.file_icon KRv7.csproj.AssemblyReference.cache
material.view.file_icon KRv7.csproj.CoreCompileInputs.cache
material.view.file_icon KRv7.csproj.FileListAbsolute.txt
material.view.file_icon KRv7.csproj.GenerateResource.cache
material.view.file_icon KRv7.designer.deps.json
material.view.file_icon KRv7.designer.runtimeconfig.json
material.view.file_icon KRv7.dll
material.view.file_icon KRv7.Form1.resources
material.view.file_icon KRv7.GeneratedMSBuildEditorConfig.editorconfig
material.view.file_icon KRv7.genruntimeconfig.cache
material.view.file_icon KRv7.GlobalUsings.g.cs
material.view.file_icon KRv7.pdb
material.view.file_icon
material.view.file_icon KRv7.dll
material.view.file_icon
material.view.file_icon KRv7.dll
material.view.file_icon Program.cs
material.view.file_icon KRv7.sln
material.view.file_icon KRv7.deps.json
material.view.file_icon KRv7.dll
material.view.file_icon KRv7.pdb
material.view.file_icon KRv7.runtimeconfig.json
material.view.file_icon OutputFile1.txt
material.view.file_icon OutputFile2.txt
material.view.file_icon КР в.07.docx
material.view.file_icon КР в.07.exe
Работа представляет собой 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.

Дополнительная информация

Оценка: Отлично
Дата оценки: 15.05.2022

Помогу с вашим онлайн тестом, другой работой или дисциплиной.
E-mail: sneroy20@gmail.com
E-mail: ego178@mail.ru
Курсовая работа по дисциплине Теория языков программирования и методы трансляции
Написать программу для автоматического построения детерминированного конечного автомата (ДКА) по словесному описанию языка. Вход программы: алфавит языка, обязательная конечная подцепочка, цепочки для распознавания. Выход: построенный ДКА (все 5 элементов), результат проверки цепочек. Подробно: Язык задан своим алфавитом, обязательной конечной цепочкой всех цепочек языка. В конечной цепочке не должно находиться символов, не содержащихся в алфавите. В край
User Некто : 16 сентября 2018
200 руб.
Теория языков программирования и методы трансляции. Контрольная работа. Вариант №17
No1 Пусть регулярный язык задан своим описанием: Множество всех цепочек из {0,1,a}*, заканчивающихся цепочкой ’a1’ и содержащих чётное количество нулей. Например, ‘a1’, ‘00a1’, ‘010a1’ и т.п. No2 Построить регулярную грамматику, задающую язык из задачи No1. No3 Построить КС-грамматику, задающую язык из задачи No1. Сгенерировать две цепочки языка по построенной грамматике. Процесс генерации цепочек языка записать в виде цепочки вывода, указывая номера применённых правил (или сами правила, как
User Doctor_Che : 19 января 2013
1300 руб.
Теория языков программирования и методы трансляции
Лабораторные работы основаны на лекционном материале; каждая выполняется после изучения соответствующего теоретического раздела. До выполнения лабораторной работы нужно внимательно разобраться с примерами, ответить на контрольные вопросы изученного теоретического раздела, а также решить задачи, предлагаемые в составе контрольных вопросов. Каждая работа снабжена методическими указаниями, сопровождающими текст задания. Рекомендуется внимательно читать задание и выполнять работу в строгом соответс
User Илья272 : 5 ноября 2023
1300 руб.
Теория языков программирования и методы трансляции
Билет No1 1) Классификация грамматик и языков по Хомскому. Проиллюстрировать на примерах (примеры должны быть свои). 2) Нисходящий распознаватель языков с возвратами. Алгоритм распознавателя с подбором альтернатив. Проиллюстрировать на примере (пример должен быть свой). 3) Построить детерминированный автомат с магазинной памятью P (с опустошением стека), допускающий язык L(P) = {a n b n c 2k k > 0, n 0}. Построить КС-грамматику для задания этого же языка.
User piligrim-24 : 11 апреля 2012
50 руб.
Теория языков программирования и методы трансляции
Лабораторная работа № 3 По дисциплине «Теория языков программирования и методы трансляции» Моделирование работы МПА Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный авт
User piligrim-24 : 3 марта 2012
50 руб.
Курсовая работа По дисциплине: Теория языков программирования и методы трансляции. Вариант 3
Задание на курсовую работу. Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка. Вход программы: алфавит языка, обязательная начальная подцепочка, выбранный символ алфавита, его кратность (натуральное число), 2 числа – диапазон длин для генерации цепочек. Выход: построенное регулярное выражение, результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности вхождений некоторого символа
User alexadubinina : 20 ноября 2024
800 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №10*
Курсовая работа Вариант №10 Постановка задачи Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка. Вход программы: алфавит языка, обязательная конечная подцепочка, кратность длины всех цепочек языка, тип грамматики (ЛЛ либо ПЛ), 2 числа – диапазон длин для генерации цепочек. Выход: построенная грамматика (все 4 элемента), результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной конечной п
User IT-STUDHELP : 6 июля 2023
800 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №10* promo
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №10
Курсовая работа цифры 20 (вар 10) Постановка задачи Тема: «Программа для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка» Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка. Язык задан своим алфавитом, обязательной конечной подцепочкой, которая должна присутствовать во всех цепочках языка, и указанием кратности длины всех цепочек языка. В конечной ц
User IT-STUDHELP : 6 июля 2023
800 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №10 promo
Проекционное черчение СПбГАСУ. Вариант 17
чертеж и 3д модель компасе 16 + дополнительно сохранены в джпг, а чертежи еще в пдф Файлы компаса можно просматривать и сохранять в нужный формат бесплатной программой КОМПАС-3D Viewer. 16 вариант
User Laguz : 27 марта 2025
200 руб.
Проекционное черчение СПбГАСУ. Вариант 17
РД 153-34.0-11.119-2001. Учет и хранение средств измерений, находящихся в эксплуатации на энергопредприятиях электроэнергетики
Настоящие Методические указания устанавливают правила и порядок учета и хранения средств измерений (СИ) и распространяются на СИ, находящиеся в эксплуатации на предприятиях и в организациях электроэнергетики. Методические указания предназначены для метрологических служб (МС) энергопредприятий РАО "ЕЭС России" независимо от форм собственности.
User Lokard : 27 июня 2013
10 руб.
Теоретическая механика РГАЗУ Задача 1 Рисунок 1 Вариант 10
Определение реакций опор твёрдого тела Определить реакции опор А и В плоской балки, если на нее действуют сосредоточенные силы Р1 и Р2, алгебраический момент пары сил М и равномерно распределенная нагрузка интенсивностью q. Схемы нагружения десяти типов даны на рисунках под номерами от 1 до 10, а числовые данные для расчета приведены в таблице 6.
User Z24 : 18 ноября 2025
200 руб.
Теоретическая механика РГАЗУ Задача 1 Рисунок 1 Вариант 10
Лабораторная работа №1. Структуры и алгоритмы обработки данных. Темя: Методы сортировки. 2022
Лабораторная работа. Структуры и алгоритмы обработки данных. Методы сортировки. Вариант 11 Цель работы Изучить основы синтаксиса Python. Изучить различные методы сортировки массивов. Задание Посредством создания нового python-проекта произвести решение следующих задания: Задание №1 Создать программу, которая выводит в консоль фразу «Hello, world!». Задание №2 Написать генератор случайных матриц(многомерных), который принимает опциональные параметры m, n, min_limit, max_limit, где m и n ук
User DiKey : 29 июня 2022
75 руб.
Лабораторная работа №1. Структуры и алгоритмы обработки данных. Темя: Методы сортировки. 2022
up Наверх