Курсовая и Лабораторные работы 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 по дисциплине: Теория языков программирования и методы трансляции. Вариант №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 по дисциплине: Теория языков программирования и методы трансляции. Вариант №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 руб.
Особенности эволюции политической элиты современной России
СОДЕРЖАНИЕ СОДЕРЖАНИЕ 2 ВВЕДЕНИЕ 3 ОСОБЕННОСТИ ЭВОЛЮЦИИ ПОЛИТИЧЕСКОЙ ЭЛИТЫ СОВРЕМЕННОЙ РОССИИ 5 1.Особенности формирования федеральной политической элиты России 5 1.1. Этапы формирования политической элиты 5 1.2. Особенности современной правящей элиты 6 2.Особенности формирования региональной политической элиты 9 2.1.Этапы формирования региональной политической элиты 9 2.2.Профессиональные, возрастные и качественные характеристики представителей региональной политической элиты 12 3. Циркуляция и
User alfFRED : 12 января 2014
10 руб.
Английский язык (часть 2)
Упражнение 1 1. He demands that the question should be discussed at tomorrow`s meeting. Он требует, чтобы вопрос обсудили на завтрашнем собрании. Упражнение 2 Переведите предложения. Определите тип условного предложения. Подчеркните вспомогательный глагол и инфинитив. 3. If the market for our products expands, we will have a 20 per cent increase in turnover next year. Упражнение 4 Перепишите и переведите предложения. Обратите внимание на правила перевода инфинитивных оборотов. Подчеркните инфи
User 5234 : 7 ноября 2016
40 руб.
Налоговый контроль и пути его совершенствования
Глава 1. Роль и место налогового контроля в системе финансового контроля Экономическая сущность налогового контроля как составного элемента финансового контроля……………………………………………………………4 Организация государственного налогового контроля в Республике Казахстан…………………………………………………………….…………….7 Глава 2. Контрольно-экономическая работа налоговой службы в Республике Казахстан 2.1. Методы проведения налогового контроля в налоговых органах………...13 2.2. Контрольно-экономическая работа налоговых служб за
User Elfa254 : 25 октября 2013
10 руб.
Оценка действующего предприятия с целью управления его стоимостью
Введение Анализ методических подходов предприятия как действующего Понятие и сущность оценочной деятельности Цели оценки и виды стоимости Принципы оценки бизнеса Подходы и методы, используемые для оценки бизнеса Анализ объекта оценки и его макроокружения Обзор социально-экономической ситуации региона Анализ макроэкономической ситуации транспортной отрасли Характеристика ООО «РК.Автокарго» как экономического субъекта Анализ финансово-хозяйственной деятельности ООО «РК.Автокарго» Определение рыноч
User ostah : 2 марта 2015
111 руб.
up Наверх