Лабораторная работа 1 По дисциплине: Теория языков программирования и методы трансляции. Тема: Генерация цепочек языка. Вариант 3

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

material.view.file_icon
material.view.file_icon отчет_лаб1_вар3.docx
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon .suo
material.view.file_icon
material.view.file_icon App.config
material.view.file_icon
material.view.file_icon
material.view.file_icon lab1WindowsForms.exe
material.view.file_icon lab1WindowsForms.exe.config
material.view.file_icon lab1WindowsForms.pdb
material.view.file_icon Microsoft.VisualStudio.GraphModel.dll
material.view.file_icon Microsoft.VisualStudio.OLE.Interop.dll
material.view.file_icon
material.view.file_icon Microsoft.VisualStudio.GraphModel.resources.dll
material.view.file_icon
material.view.file_icon Chain.cs
material.view.file_icon ChainGenerator.cs
material.view.file_icon Generator.cs
material.view.file_icon Generator.Designer.cs
material.view.file_icon Generator.resx
material.view.file_icon Grammar.cs
material.view.file_icon GrammarInput.cs
material.view.file_icon GrammarInput.Designer.cs
material.view.file_icon GrammarInput.resx
material.view.file_icon grammatical.Designer.gg
material.view.file_icon lab1WindowsForms.csproj
material.view.file_icon lab1WindowsForms.csproj.user
material.view.file_icon
material.view.file_icon
material.view.file_icon .NETFramework,Version=v4.7.2.AssemblyAttributes.cs
material.view.file_icon DesignTimeResolveAssemblyReferences.cache
material.view.file_icon DesignTimeResolveAssemblyReferencesInput.cache
material.view.file_icon lab1WindowsForms.csproj.CoreCompileInputs.cache
material.view.file_icon lab1WindowsForms.csproj.FileListAbsolute.txt
material.view.file_icon lab1WindowsForms.csproj.GenerateResource.cache
material.view.file_icon lab1WindowsForms.csprojAssemblyReference.cache
material.view.file_icon lab1WindowsForms.exe
material.view.file_icon lab1WindowsForms.Generator.resources
material.view.file_icon lab1WindowsForms.GrammarEnterForm.resources
material.view.file_icon lab1WindowsForms.pdb
material.view.file_icon lab1WindowsForms.Properties.Resources.resources
material.view.file_icon
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 Rule.cs
material.view.file_icon Rules.cs
material.view.file_icon Symbol.cs
material.view.file_icon UserControl1.cs
material.view.file_icon UserControl1.Designer.cs
material.view.file_icon lab1WindowsForms.sln
material.view.file_icon lab1WindowsForms.exe
material.view.file_icon алгоритм.jpg
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word
  • Программа для просмотра текстовых файлов
  • Программа для просмотра изображений

Описание

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

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

Зачтено в 2023 году без замечаний
Лабораторная работа №1 по дисциплине: Теория языков программирования и методы трансляции. Тема. Генерация цепочек языка.
Лабораторная работа No 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматик
User Udacha2013 : 31 октября 2015
250 руб.
Теория языков программирования и методы трансляции Лабораторная работа № 1 Генерация цепочек языка
Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клавиатуры. На вход програм
User svladislav987 : 29 августа 2023
100 руб.
Теория языков программирования и методы трансляции. Лабораторная работа № 1 Генерация цепочек языка. Для всех вариантов
Для всех вариантов Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клавиату
User dinapunsh : 18 ноября 2019
130 руб.
Теория языков программирования и методы трансляции. Лабораторная работа № 1 Генерация цепочек языка. Для всех вариантов
Теория языков программирования и методы трансляции. Лабораторная работа №1. Генерация цепочек языка. Для всех вариантов.
Лабораторная работа № 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматик
User nik200511 : 29 декабря 2015
36 руб.
Лабораторная работа № 1 по дисциплине: "Теория языков программирования и методы трансляции" Тема: "Генерация цепочек языка". Вариант № 1
Содержание Лабораторная работа No 1 Генерация цепочек языка 1 СОДЕРЖАНИЕ 2 1. ПОСТАНОВКА ЗАДАЧИ 3 2. ОПИСАНИЕ ВХОДНЫХ ДАННЫХ ПРОГРАММЫ И ЕЕ РЕЗУЛЬТАТОВ 3 3. ОПИСАНИЕ ОСНОВНЫХ ПЕРЕМЕННЫХ, БЛОКОВ И ПОДПРОГРАММ 8 4. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ 10 5. ТЕКСТ ПРОГРАММЫ 10 6. РЕЗУЛЬТАТЫ РАБОТЫ 21 7. КОНТРОЛЬНЫЕ ВОПРОСЫ 22 1. Постановка задачи Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВС
User xtrail : 9 апреля 2013
350 руб.
Лабораторная работа №1:Генерация цепочек языка
Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы.
User aragorn24 : 29 сентября 2015
150 руб.
Генерация цепочек языка
Пусть язык задан контекстно-свободной грамматикой. Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клавиатуры.
User woorumu : 7 января 2017
150 руб.
Генерация цепочек языка
Генерация цепочек языка
Описание основных переменных, а также основных блоков и подпрограмм. Программа написана на языке C# в IDE Visual Studio 2008 Express Edition . Для правила списка правил описан тип: struct Rule { public Char left; // левая часть правила public String right; // правая часть правила }; Поля класса Generator: // разделители символов терминального и нетерминального алфавитов private const String separators = ", "; // список полученных цепочек
User Dusya : 25 января 2013
250 руб.
Химия. Элементоорганические соединения. Ответы на экзамен. 2022
Химия. Элементоорганические соединения. Ответы на экзамен. Российский химико-технологический университет им. Д.И. Менделеева. Оглавление 1. Стабильность Si-C-связей, влияние заместителей в связанном с атомом кремния остатке. 4 2. Реакция Пудовика. Исходные соединения, связь с реакцией Кабачника—Филдса в варианте с основаниями Шиффа. 6 3. Реакционная способность и стабильность металлорганических соединений. Основные способы получения металлорганических соединений. 11 4. Способы получения и х
User DiKey : 21 июня 2022
250 руб.
Химия. Элементоорганические соединения. Ответы на экзамен. 2022
Интернет-технологии. Лабораторная работа №3. Таблицы и фреймы.
Первая часть задания. Таблицы Создать документ, в котором в заголовке окна браузера должна быть надпись "Лабораторная 3-1". С использованием команд создания таблицы сформировать таблицу по указанному варианту. Обратить внимание на ширину первого столбца (задать в процентах от ширины таблицы), шрифт (курсив, Courier New, Arial) и расположение текста (по центру, слева, справа). Вторая часть задания. Фреймы Используя описанные команды, создать документ, в котором в заголовке окна браузера должна
User nik200511 : 29 ноября 2013
35 руб.
Интернет-технологии. Лабораторная работа №3. Таблицы и фреймы.
Контрольная работа по дисциплине: Основы антикоррупционной культуры. Вариант №16
Контрольная работа по дисциплине: «Основы антикоррупционной культуры» Цель: приобрести навыки научного изложения материала и умения обобщать факты, делать на их основе теоретические и практические выводы. Задание: Написать реферат на заданную темы. Вариант: 16 Тема: Особенности коррупции в организованных группах и преступных сообществах ------------------------------------------------------------------------------ Содержание: Введение 1. Организованная преступность и коррупция 2. Взаимосвяз
User IT-STUDHELP : 20 декабря 2022
400 руб.
promo
Реферат на тему: Исследование луны
Для осуществления цели Реферата я выделил три задачи которые должен решить в исследовательской работе – изучить информацию исследования о Луне, известную в до космический период; – изучить исследования Луны автоматами; – изучить исследования Луны человеком в XX веке;
User Yagirs : 18 апреля 2015
20 руб.
up Наверх