Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №3

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

material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon Project1.cfg
material.view.file_icon Project1.dof
material.view.file_icon Project1.dpr
material.view.file_icon Project1.exe
material.view.file_icon Project1.res
material.view.file_icon Unit1.dcu
material.view.file_icon Unit1.ddp
material.view.file_icon Unit1.dfm
material.view.file_icon Unit1.pas
material.view.file_icon Unit1.~ddp
material.view.file_icon Unit1.~dfm
material.view.file_icon Unit1.~pas
material.view.file_icon Отчет.doc
material.view.file_icon
material.view.file_icon
material.view.file_icon Project1.cfg
material.view.file_icon Project1.dof
material.view.file_icon Project1.dpr
material.view.file_icon Project1.exe
material.view.file_icon Project1.res
material.view.file_icon Unit1.dcu
material.view.file_icon Unit1.ddp
material.view.file_icon Unit1.dfm
material.view.file_icon Unit1.pas
material.view.file_icon Unit1.~ddp
material.view.file_icon Unit1.~dfm
material.view.file_icon Unit1.~pas
material.view.file_icon Отчет.doc
material.view.file_icon
material.view.file_icon Input data.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 Form1.cs
material.view.file_icon Form1.Designer.cs
material.view.file_icon Form1.resx
material.view.file_icon KRv3.csproj
material.view.file_icon KRv3.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 KRv3.AboutBox1.resources
material.view.file_icon KRv3.AssemblyInfo.cs
material.view.file_icon KRv3.AssemblyInfoInputs.cache
material.view.file_icon KRv3.assets.cache
material.view.file_icon KRv3.csproj.AssemblyReference.cache
material.view.file_icon KRv3.csproj.CoreCompileInputs.cache
material.view.file_icon KRv3.csproj.FileListAbsolute.txt
material.view.file_icon KRv3.csproj.GenerateResource.cache
material.view.file_icon KRv3.designer.deps.json
material.view.file_icon KRv3.designer.runtimeconfig.json
material.view.file_icon KRv3.dll
material.view.file_icon KRv3.Form1.resources
material.view.file_icon KRv3.GeneratedMSBuildEditorConfig.editorconfig
material.view.file_icon KRv3.genruntimeconfig.cache
material.view.file_icon KRv3.GlobalUsings.g.cs
material.view.file_icon KRv3.pdb
material.view.file_icon
material.view.file_icon KRv3.dll
material.view.file_icon
material.view.file_icon KRv3.dll
material.view.file_icon KRv3.csproj.nuget.dgspec.json
material.view.file_icon KRv3.csproj.nuget.g.props
material.view.file_icon KRv3.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 KRv3.AboutBox1.resources
material.view.file_icon KRv3.AssemblyInfo.cs
material.view.file_icon KRv3.AssemblyInfoInputs.cache
material.view.file_icon KRv3.assets.cache
material.view.file_icon KRv3.csproj.AssemblyReference.cache
material.view.file_icon KRv3.csproj.CoreCompileInputs.cache
material.view.file_icon KRv3.csproj.FileListAbsolute.txt
material.view.file_icon KRv3.csproj.GenerateResource.cache
material.view.file_icon KRv3.designer.deps.json
material.view.file_icon KRv3.designer.runtimeconfig.json
material.view.file_icon KRv3.dll
material.view.file_icon KRv3.Form1.resources
material.view.file_icon KRv3.GeneratedMSBuildEditorConfig.editorconfig
material.view.file_icon KRv3.genruntimeconfig.cache
material.view.file_icon KRv3.GlobalUsings.g.cs
material.view.file_icon KRv3.pdb
material.view.file_icon
material.view.file_icon KRv3.dll
material.view.file_icon
material.view.file_icon KRv3.dll
material.view.file_icon Program.cs
material.view.file_icon RE.cs
material.view.file_icon KRv3.sln
material.view.file_icon KRv3.deps.json
material.view.file_icon KRv3.dll
material.view.file_icon KRv3.pdb
material.view.file_icon KRv3.runtimeconfig.json
material.view.file_icon Output data 2.txt
material.view.file_icon Output data.txt
material.view.file_icon Отчет.docx
material.view.file_icon ТЯП КР в.03.exe
material.view.file_icon
material.view.file_icon Отчет.doc
material.view.file_icon
material.view.file_icon language1.txt
material.view.file_icon language2.txt
material.view.file_icon language3.txt
material.view.file_icon Project1.cfg
material.view.file_icon Project1.dof
material.view.file_icon Project1.dpr
material.view.file_icon Project1.exe
material.view.file_icon Project1.res
material.view.file_icon Unit1.dcu
material.view.file_icon Unit1.ddp
material.view.file_icon Unit1.dfm
material.view.file_icon Unit1.pas
material.view.file_icon Unit1.~ddp
material.view.file_icon Unit1.~dfm
material.view.file_icon Unit1.~pas
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word
  • Программа для просмотра текстовых файлов

Описание

Лабораторная работа 1
Генерация цепочек языка

ЗАДАНИЕ

Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы.
Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клавиатуры.
На вход программы подаётся КС-грамматика (терминальный и нетерминальный алфавиты, целевой символ, правила вывода), задаётся диапазон длин цепочек, указывается тип вывода (левосторонний или правосторонний).
Рекомендуется для ввода исходных данных использовать соответствующую форму. При вводе правил грамматики не рекомендуется предоставлять пользователю излишнюю свободу действий, например, удобнее запретить ввод в левой части правил более чем одного нетерминального символа, чем проверять введённые правила на соответствие контекстно-свободному типу.
На выходе должен быть список построенных цепочек. Все цепочки в списке должны быть различны. При получении одинаковых цепочек (разными способами) их следует сохранять в списке выводимых цепочек только в случае выполнения дополнительного задания.
Проверить программу на примерах из лекционного курса и на заданиях из контрольных вопросов к теоретической части.

Контрольные вопросы:
1.Как поведёт себя программа, если при вводе правил грамматики сделать ошибку – ввести правила грамматики, не соответствующей КС-типу, или не использовать какие-то символы исходных алфавитов, или поместить в левой части правил терминальный символ?

2.Используется ли при генерации цепочек рекурсия? Если да, то как ограничена её глубина?

3.Какой язык порождается грамматикой G({0},{S,A},{SAAA, AAAA |0}, S)? Правильно ли Ваша программа работает на этом примере? Если нет – доработайте программу.

4.Разрешает ли Ваша программа использовать в исходной грамматике пустые правила? Если нет – доработайте программу.

=============================================

Лабораторная работа 2
Моделирование работы ДКА

Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символы», «после прочтения цепочки автомат не пришёл в конечное состояние» и т.п. Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры.
На вход программы подаётся ДКА (множество состояний, алфавит языка, начальное состояние, множество заключительных состояний, функция переходов в виде таблицы) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Программа должна предоставлять пользователю возможность изменять начальное и конечные состояния с сохранением введённой функции переходов для заданного автомата.
Выход – отображение на экране процесса проверки цепочки в виде последовательной смены конфигураций и вывод результата – сообщения, принадлежит ли цепочка языку.
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.

1.Контрольные вопросы:
Как поведёт себя программа, если при вводе таблицы переходов ДКА сделать (случайно или преднамеренно) ошибку – например, ввести несуществующее состояние?

2.Все ли ячейки таблицы переходов исходного ДКА обязательно должны быть заполнены или можно использовать неполностью определённый ДКА?

3.В каком случае ДКА распознаёт пустую цепочку как цепочку языка?

=============================================

Лабораторная работа 3
Перевод с помощью МП-преобразователя

Пусть дан преобразователь с магазинной памятью; написать программу, которая будет выполнять перевод цепочек с одного языка на другой с помощью заданного преобразователя (теоретический материал раздела 4.2). При невозможности выполнить перевод (цепочка не принадлежит исходному языку) необходимо выводить на экран соответствующее сообщение.

Исходный преобразователь вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выполняя его до тех пор, пока не возникнет желание закончить работу. Процесс перевода цепочки в виде последовательной смены конфигураций отображать на экране.

На вход программы подаётся ДМП-преобразователь (множество состояний, алфавиты входного и выходного языков, алфавит магазина, начальное состояние, начальное содержимое стека, множество заключительных состояний, функция переходов в виде списка правил) и проверяемая цепочка символов (аналогично лаб. раб. No2).

Рекомендуется за основу взять программу лабораторной работы No2, дополнив исходные данные алфавитом стека, начальным содержимым стека и выходным алфавитом, функцию переходов – в соответствии с определением преобразователя, а конфигурации – содержимым памяти и выходными цепочками.

Выход: отображение на экране процесса перевода цепочки в виде последовательной смены конфигураций преобразователя, результат перевода – полученная цепочка.

Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.

Контрольные вопросы:
1.Как поведёт себя преобразователь, если поданная на его вход цепочка не может быть распознана (не принадлежит к заданному языку)?

2.Как соотносятся алфавиты исходного языка и того, на который выполняется перевод (должны совпадать, различаться...)? Поясните ответ.

3.Как поведёт себя Ваша программа при некорректном вводе? Например, функция переходов задана не в том формате, определена не для того количества параметров, использует алфавит, отличный от заданных...

=============================================
=============================================

Курсовая работа
Вариант No3

Задание:
Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка.
Вход программы: алфавит языка, обязательная начальная подцепоч-ка, выбранный символ алфавита, его кратность (натуральное число), 2 чис-ла – диапазон длин для генерации цепочек.
Выход: построенное регулярное выражение, результат генерации цепочек.
Подробно:
Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности вхождений некоторого символа во все цепочки языка. В начальной цепочке не должно находиться символов, не содержащихся в алфавите. В крайнем случае она может быть и пустой. Кратность числа вхождений выбранного символа задаётся любым натуральным числом. Кратность, равная единице, равносильна отсутствию ограничений на вхож-дения данного символа, т.е. он может встречаться в цепочках любое коли-чество раз. При любом значении кратности количество вхождений символа в цепочку может быть и нулевым.
Программа должна:
1. по предложенному описанию регулярного языка строить РВ, ге-нерирующее этот язык, в том виде, как было рассмотрено в теории, раздел 2.1.1;
2. с помощью построенного РВ генерировать все цепочки языка в заданном пользователем диапазоне длин.
При генерации цепочек языка по РВ можно использовать любые структуры и алгоритмы, в том числе и прямой перебор.

------------------------------------------------------------------------------

\Описание алгоритма решения задачи
\Проиллюстрируем данный алгоритм на примере.
\Текст программы
\Результаты тестирования программы
\Распечатка файла результатов

=============================================

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

Проверил(а): Бах Ольга Анатольевна
Оценка: Отлично
Дата оценки: 25.12.2022г.

Помогу с вашим вариантом, другой дисциплиной, онлайн-тестом, либо сессией под ключ.
E-mail: sneroy20@gmail.com
E-mail: ego178@mail.ru
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10
Курсовая работа цифры 20 (вар 10) Постановка задачи Тема: «Программа для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка» Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка. Язык задан своим алфавитом, обязательной конечной подцепочкой, которая должна присутствовать во всех цепочках языка, и указанием кратности длины всех цепочек языка. В конечной ц
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10 promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №09
Курсовая работа Вариант No09 Постановка задачи Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка. Вход программы: алфавит языка, обязательные начальная и конечная подцепочки, кратность длины всех цепочек языка, 2 числа – диапазон длин для генерации цепочек. Выход: построенное регулярное выражение, результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной начальной и конечной подцепочками и указанием кратности длины
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №09 promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10*
Курсовая работа Вариант No10 Постановка задачи Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка. Вход программы: алфавит языка, обязательная конечная подцепочка, кратность длины всех цепочек языка, тип грамматики (ЛЛ либо ПЛ), 2 числа – диапазон длин для генерации цепочек. Выход: построенная грамматика (все 4 элемента), результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной конечной
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10* promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №04
Курсовая работа Вариант No04 Постановка задачи Тема: «Программа для автоматического построения детерминированного конечного автомата (ДКА), эквивалентного заданной регулярной грамматике» Написать программу для автоматического построения детерминированного конечного автомата (ДКА), эквивалентного заданной регулярной грамматике. Язык задан регулярной грамматикой, причём она может быть не автоматного вида. При написании программы разработчику разрешается выбрать один из двух типов регулярной грам
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №04 promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №15
Лабораторная работа 1 Генерация цепочек языка ЗАДАНИЕ: Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использоват
User IT-STUDHELP : 25 декабря 2022
1800 руб.
promo
Теория языков программирования и методы трансляции
Лабораторные работы основаны на лекционном материале; каждая выполняется после изучения соответствующего теоретического раздела. До выполнения лабораторной работы нужно внимательно разобраться с примерами, ответить на контрольные вопросы изученного теоретического раздела, а также решить задачи, предлагаемые в составе контрольных вопросов. Каждая работа снабжена методическими указаниями, сопровождающими текст задания. Рекомендуется внимательно читать задание и выполнять работу в строгом соответс
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 руб.
Гранные поверхности №2318. Вариант №4. РУТ (МИИТ) 2005г.
Методические указания к выполнению домашней работы по начертательной геометрии. Домашняя работа на тему "Гранные поверхности" состоит из следующих задач: Задача №1 Построение проекций многогранника а) по заданным координатам его вершин (варианты задания 1/32) Задание №2 Построение сечения многогранника плоскостью, а) проходящей через заданную точку K и перпендикулярной к одной из плоскостей проекций ( варианты заданий 1/32) Задание №3 Определение натуральной величины сечения (варианты 1/32) ВАР
User werchak : 14 декабря 2020
550 руб.
Гранные поверхности №2318. Вариант №4. РУТ (МИИТ) 2005г.
Охрана гидросферы от загрязнения
Введение 1. Гидросфера и ее охрана от загрязнения 1.1 Мероприятия по охране вод морей и Мирового океана 1.2 Охрана водных ресурсов от загрязнения и истощения 2. Особенности загрязнения Мирового океана и поверхности вод суши 2.1 Органические и минеральные загрязнения 2.2 Органические жидкости и газы, канцерогенные вещества 3. Проблемы пресной воды 3.1 Ресурсы пресной воды 3.2 Причины недостатка пресной воды Заключение Список использованной литературы Введение Водные запасы на Земле огромны, они
User Qiwir : 18 марта 2013
5 руб.
Экзаменационная работа по дисциплине: Технические методы и средства защиты информации. Билет №3
Билет № 3 1. Какое назначение имеют сетевые помехоподавляющие пассивные фильтры? На каких элементах реализуются сетевые помехоподавляющие пассивные фильтры? 2. Дайте определения и приведите примеры сосредоточенных и распределенных источников побочных излучений. 3. Перечислите основные задачи и органы технической разведки (ТР). Принципы ТР.
User Roma967 : 5 февраля 2023
600 руб.
promo
Деэмульсатор горизонтальный-Курсовая работа
ОБРАЗОВАНИЕ НЕФТЯНЫХ ЭМУЛЬСИЙ И ИХ ОСНОВНЫЕ СВОЙСТВА Для правильного выбора способа обезвоживания нефти (деэмульса-ции)необходимо знать механизм образования эмульсий и их свойства. В пластовых условиях нефтяные эмульсии не образуются. Образование эмульсий уже начинается при движении нефти к устью скважины и про-должается при дальнейшем движении по промысловым коммуникаци-ям, т.е. эмульсии образуются там, где происходит непрерывное пере-мешивание нефти и воды. Инте
1294 руб.
Деэмульсатор горизонтальный-Курсовая работа
up Наверх