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

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

material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon App.config
material.view.file_icon GenChains.csproj
material.view.file_icon Grammar.cs
material.view.file_icon GrammarForm.cs
material.view.file_icon GrammarForm.Designer.cs
material.view.file_icon GrammarForm.resx
material.view.file_icon MainForm.cs
material.view.file_icon MainForm.Designer.cs
material.view.file_icon MainForm.resx
material.view.file_icon Program.cs
material.view.file_icon
material.view.file_icon AssemblyInfo.cs
material.view.file_icon Resources.Designer.cs
material.view.file_icon Resources.resx
material.view.file_icon Settings.Designer.cs
material.view.file_icon Settings.settings
material.view.file_icon GenChains.sln
material.view.file_icon GenChains.exe
material.view.file_icon grammar1.txt
material.view.file_icon grammar2.txt
material.view.file_icon лабораторная 1.docx
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon App.config
material.view.file_icon DFAForm.cs
material.view.file_icon DFAForm.Designer.cs
material.view.file_icon DFAForm.resx
material.view.file_icon DFASim.csproj
material.view.file_icon FA.cs
material.view.file_icon MainForm.cs
material.view.file_icon MainForm.Designer.cs
material.view.file_icon MainForm.resx
material.view.file_icon Program.cs
material.view.file_icon
material.view.file_icon AssemblyInfo.cs
material.view.file_icon Resources.Designer.cs
material.view.file_icon Resources.resx
material.view.file_icon Settings.Designer.cs
material.view.file_icon Settings.settings
material.view.file_icon DFASim.sln
material.view.file_icon DFASim.exe
material.view.file_icon FA1.txt
material.view.file_icon лабораторная 2.docx
material.view.file_icon
material.view.file_icon PT1.txt
material.view.file_icon
material.view.file_icon
material.view.file_icon App.config
material.view.file_icon MainForm.cs
material.view.file_icon MainForm.Designer.cs
material.view.file_icon MainForm.resx
material.view.file_icon Program.cs
material.view.file_icon
material.view.file_icon AssemblyInfo.cs
material.view.file_icon Resources.Designer.cs
material.view.file_icon Resources.resx
material.view.file_icon Settings.Designer.cs
material.view.file_icon Settings.settings
material.view.file_icon PT.cs
material.view.file_icon PTForm.cs
material.view.file_icon PTForm.Designer.cs
material.view.file_icon PTForm.resx
material.view.file_icon PTSim.csproj
material.view.file_icon PTSim.sln
material.view.file_icon PTSim.exe
material.view.file_icon лабораторная 3.docx
material.view.file_icon
material.view.file_icon grammar1.txt
material.view.file_icon grammar2.txt
material.view.file_icon output1.txt
material.view.file_icon output2.txt
material.view.file_icon
material.view.file_icon
material.view.file_icon App.config
material.view.file_icon DFAForm.cs
material.view.file_icon DFAForm.Designer.cs
material.view.file_icon DFAForm.resx
material.view.file_icon FA.cs
material.view.file_icon Grammar.cs
material.view.file_icon MainForm.cs
material.view.file_icon MainForm.Designer.cs
material.view.file_icon MainForm.resx
material.view.file_icon Program.cs
material.view.file_icon
material.view.file_icon AssemblyInfo.cs
material.view.file_icon Resources.Designer.cs
material.view.file_icon Resources.resx
material.view.file_icon Settings.Designer.cs
material.view.file_icon Settings.settings
material.view.file_icon RG2DFA.csproj
material.view.file_icon RG2DFA.sln
material.view.file_icon RG2DFA.exe
material.view.file_icon пояснительная записка.docx
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Программа для просмотра текстовых файлов
  • Microsoft Word

Описание

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

Постановка задачи

Тема: «Программа для автоматического построения детерминированного конечного автомата (ДКА), эквивалентного заданной регулярной грамматике»
Написать программу для автоматического построения детерминированного конечного автомата (ДКА), эквивалентного заданной регулярной грамматике.
Язык задан регулярной грамматикой, причём она может быть не автоматного вида. При написании программы разработчику разрешается выбрать один из двух типов регулярной грамматики (ЛЛ или ПЛ) и следует информировать об этом пользователя. Терминальный алфавит грамматики может включать в себя любые символы, в нетерминальном алфавите могут использоваться заглавные буквы латинского алфавита или (на усмотрение разработчика) слова. Правила задаваемой грамматики должны соответствовать выбранному типу. Для того чтобы в исходной грамматике можно было использовать пустое правило, необходимо предусмотреть поле ввода для символа, которым пользователь может обозначить пустую цепочку.
ДКА должен распознавать язык, задаваемый исходной грамматикой, т.е. являться эквивалентной конструкцией. Функция переходов ДКА может изображаться в виде таблицы или графа, вариант вида её представления выбирается разработчиком. Для удобства построения автомата рекомендуется предварительно привести заданную грамматику к автоматному виду.
При выборе такого способа построения ДКА, когда сначала по заданной грамматике строится эквивалентный НКА, а затем он приводится к детерминированному виду, промежуточный результат в виде НКА необходимо также отображать на экране по просьбе пользователя.
После построения ДКА пользователь может вводить произвольные цепочки для проверки их на принадлежность исходному языку. Разбор цепочек автоматом следует поэтапно отображать на экране в виде последовательной смены конфигураций.
Программа должна:
1. по заданной регулярной грамматике строить эквивалентный ДКА, распознающий этот же язык;
2. с помощью построенного ДКА проверять вводимые пользователем цепочки на их принадлежность этому языку.
Вход программы: терминальный и нетерминальный алфавиты грамматики, целевой символ, правила грамматики, цепочки для распознавания.
Выход: построенный ДКА (все 5 элементов), результат проверки цепочек.

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

СОДЕРЖАНИЕ:

1 Постановка задачи 
2 Алгоритм решения задачи 
3 Описание основных переменных, основных блоков и подпрограмм 
4 Текст программы 
5 Результаты тестирования программы 
6 Распечатка файлов результатов 

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

Лабораторная работа 1

Постановка задачи

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

1 Описание входных данных программы и ее результатов

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

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

Ответы на контрольные вопросы:

1. Как поведёт себя программа, если при вводе правил грамматики сделать ошибку – ввести правила грамматики, не соответствующей КС-типу, или не использовать какие-то символы исходных алфавитов, или поместить в левой части правил терминальный символ?
2. Используется ли при генерации цепочек рекурсия? Если да, то как ограничена её глубина?
3. Какой язык порождается грамматикой G({0},{S,A},{SAAA, AAAA |0}, S)? Правильно ли Ваша программа работает на этом примере?
4. Разрешает ли Ваша программа использовать в исходной грамматике пустые правила? Если нет – доработайте программу.

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

СОДЕРЖАНИЕ:

1 Постановка задачи 
1 Описание входных данных программы и ее результатов 
3 Описание основных переменных, основных блоков и подпрограмм 
4 Алгоритм решения задачи 
5 Текст программы 
6 Результаты тестирования программы 
7 Ответы на контрольные вопросы 

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

Лабораторная работа 2

Постановка задачи

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

1 Описание входных данных программы и ее результатов

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

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

Ответы на контрольные вопросы:

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

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

СОДЕРЖАНИЕ:

1 Постановка задачи 
1 Описание входных данных программы и ее результатов 
3 Описание основных переменных, основных блоков и подпрограмм 
4 Алгоритм решения задачи 
5 Текст программы 
6 Результаты тестирования программы 
7 Ответы на контрольные вопросы 

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

Лабораторная работа 3

Постановка задачи

Тема: «Перевод с помощью МП-преобразователя»
Пусть дан преобразователь с магазинной памятью; написать программу, которая будет выполнять перевод цепочек с одного языка на другой с помощью заданного преобразователя. При невозможности выполнить перевод (цепочка не принадлежит исходному языку) необходимо выводить на экран соответствующее сообщение.
Исходный преобразователь вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выполняя его до тех пор, пока не возникнет желание закончить работу. Процесс перевода цепочки в виде последовательной смены конфигураций отображать на экране.
Рекомендуется за основу взять программу лабораторной работы No2, дополнив исходные данные алфавитом стека, начальным содержимым стека и выходным алфавитом, функцию переходов – в соответствии с определением преобразователя, а конфигурации – содержимым памяти и выходными цепочками.

2 Описание входных данных программы и ее результатов

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

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

Ответы на контрольные вопросы:

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


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

СОДЕРЖАНИЕ:

1 Постановка задачи 
2 Описание входных данных программы и ее результатов 
3 Описание основных переменных, основных блоков и подпрограмм 
4 Алгоритм решения задачи 
5 Текст программы 
6 Результаты тестирования программы 
7 Ответы на контрольные вопросы 

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

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

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

Помогу с вашим вариантом, другой работой, дисциплиной или онлайн-тестом.
E-mail: sneroy20@gmail.com
E-mail: ego178@mail.ru
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №3
Лабораторная работа 1 Генерация цепочек языка ЗАДАНИЕ Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю
User IT-STUDHELP : 25 декабря 2022
1800 руб.
promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №09
Курсовая работа Вариант No09 Постановка задачи Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка. Вход программы: алфавит языка, обязательные начальная и конечная подцепочки, кратность длины всех цепочек языка, 2 числа – диапазон длин для генерации цепочек. Выход: построенное регулярное выражение, результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной начальной и конечной подцепочками и указанием кратности длины
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №09 promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10
Курсовая работа цифры 20 (вар 10) Постановка задачи Тема: «Программа для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка» Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка. Язык задан своим алфавитом, обязательной конечной подцепочкой, которая должна присутствовать во всех цепочках языка, и указанием кратности длины всех цепочек языка. В конечной ц
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10 promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10*
Курсовая работа Вариант No10 Постановка задачи Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка. Вход программы: алфавит языка, обязательная конечная подцепочка, кратность длины всех цепочек языка, тип грамматики (ЛЛ либо ПЛ), 2 числа – диапазон длин для генерации цепочек. Выход: построенная грамматика (все 4 элемента), результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной конечной
User IT-STUDHELP : 6 июля 2023
1800 руб.
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №10* promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №15
Лабораторная работа 1 Генерация цепочек языка ЗАДАНИЕ: Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использоват
User IT-STUDHELP : 25 декабря 2022
1800 руб.
promo
Лабораторные работы 1-3 по дисциплине: Теория языков программирования и методы трансляции. Вариант №04
Лабораторная работа 1 Постановка задачи Тема: «Генерация цепочек языка». Пусть язык задан контекстно-свободной грамматикой. Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Рекомендуется для ввода исходных данных использовать соответствующую форму. При вводе правил грамматики не р
User IT-STUDHELP : 6 июля 2023
1500 руб.
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. Экзамен
Вариант 03 1. Какая задача ценообразованием решается с помощью стимулирующей функции цены? а) максимизация объема продаж б) снижение затрат входящих в цену товара в) удовлетворение интересов продавцов и покупателей в процессе осуществления товарообменной операции. 2. Общие черты, какой рыночной структуры характерны для монополистической конкуренции: а) олигополии б) совершенной конкуренции в) монопсонии 3. Что такое коносамент? а) платежное поручение б) транспортная накладная в
User rtt20 : 25 января 2015
100 руб.
"Расчет оборудования узла мультисервисного доступа (УМСД)". Контрольная работа. Вариант №10
Задача 1 "Расчет оборудования узла мультисервисного доступа (УМСД)" В УМСД, состоящий из нескольких МАК, включаются: • аналоговые абонентские линии (ААЛ); • линии ADSL; • линии SHDSL; • линии PRI; • линии радиодоступа; • линии к оконечно-транзитной СК (ОТС) местной сети; • линия в направлении сети с пакетной передачей информации (IP-сети). Исходные данные приведены в таблице 1
User elina56 : 23 декабря 2016
130 руб.
Онлайн Тест 8 по дисциплине: Архитектура ЭВМ.
Вопрос №1 Начало последовательной передачи – … старт-бит бит данных стоп бит бит четности Вопрос №2 С помощью овала отображаются … алгоритма начало конец условие Вопрос №3 … принцип позволяет процессору параллельно выполнять несколько команд Конвейерный Последовательный Ортогональный Вопрос №4 Соотношение между буферной и основной памятью процессора … 1:256 1:1 1:2 1:1000 Вопрос №5 Блок условного перехода находится выше блоков действий для циклов параметрическ
User IT-STUDHELP : 28 марта 2023
800 руб.
promo
Зачетная работа, Приборы СВЧ и оптического диапазона, Билет №13
1 Какие частоты и длины волн входят в СВЧ-диапазон? 2 Как можно уменьшить вредное влияние индуктивностей выводов? 3 Где протекает и чем обусловлен наведенный ток? 4 Какой должна быть форма электронного потока (конвекционного тока) для наилучшего отбора энергии в виде электромагнитных колебаний? 5 Какое управление и какая длительность взаимодействия электронного потока с электромагнитным полем в пролетных клистронах? 6 Каково назначение 1-го резонатора во многорезонаторном пролетном к
User linok1910 : 8 января 2016
45 руб.
up Наверх