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

Цена:
350 руб.

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

material.view.file_icon
material.view.file_icon
material.view.file_icon
material.view.file_icon Project1.bpr
material.view.file_icon Project1.cpp
material.view.file_icon Project1.exe
material.view.file_icon Project1.obj
material.view.file_icon Project1.res
material.view.file_icon Project1.tds
material.view.file_icon Unit1.cpp
material.view.file_icon Unit1.ddp
material.view.file_icon Unit1.dfm
material.view.file_icon Unit1.h
material.view.file_icon Unit1.obj
material.view.file_icon test01.grm
material.view.file_icon test02.grm
material.view.file_icon test03.grm
material.view.file_icon test04.grm
material.view.file_icon test05.grm
material.view.file_icon test06.grm
material.view.file_icon test07.grm
material.view.file_icon test08.grm
material.view.file_icon Лабораторная1.doc
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word

Описание

Содержание
Лабораторная работа No 1 Генерация цепочек языка 1
СОДЕРЖАНИЕ 2
1. ПОСТАНОВКА ЗАДАЧИ 3
2. ОПИСАНИЕ ВХОДНЫХ ДАННЫХ ПРОГРАММЫ И ЕЕ РЕЗУЛЬТАТОВ 3
3. ОПИСАНИЕ ОСНОВНЫХ ПЕРЕМЕННЫХ, БЛОКОВ И ПОДПРОГРАММ 8
4. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ 10
5. ТЕКСТ ПРОГРАММЫ 10
6. РЕЗУЛЬТАТЫ РАБОТЫ 21
7. КОНТРОЛЬНЫЕ ВОПРОСЫ 22

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

Контрольные вопросы:

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

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

В архиве отчет+программа, использованная в работе.
Отличная работа!
Специальность ПОВТиАС (ПОиВТ)
Лабораторная работа №1 по дисциплине: Теория языков программирования и методы трансляции. Тема. Генерация цепочек языка.
Лабораторная работа No 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматик
User Udacha2013 : 31 октября 2015
250 руб.
Лабораторная работа 1 По дисциплине: Теория языков программирования и методы трансляции. Тема: Генерация цепочек языка. Вариант 3
Лабораторная работа No 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику
User alexadubinina : 20 ноября 2024
400 руб.
Генерация цепочек языка
Пусть язык задан контекстно-свободной грамматикой. Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клавиатуры.
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 руб.
Лабораторная работа №1:Генерация цепочек языка
Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы.
User aragorn24 : 29 сентября 2015
150 руб.
Лабораторная работа 3 по дисциплине: Теория языков программирования и методы трансляции. Тема. Моделирование работы МПА.
Лабораторная работа № 3 Моделирование работы МПА Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. В
User Udacha2013 : 31 октября 2015
200 руб.
Лабораторная работа №2 по дисциплине: Теория языков программирования и методы трансляции. Тема. Моделирование работы ДКА.
Лабораторная работа № 2 Моделирование работы ДКА Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символы», «после прочтения цепочки а
User Udacha2013 : 31 октября 2015
250 руб.
Лабораторная работа 2 По дисциплине: Теория языков программирования и методы трансляции. Тема: Моделирование работы ДКА. Вариант3
Задание. Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символы», «после прочтения цепочки автомат не пришёл в конечное состояние» и
User alexadubinina : 20 ноября 2024
400 руб.
Контрольная работа по дисциплине: Цифровая обработка сигналов. Вариант №51
Задача 1. Прохождение дискретного непериодического сигнала через нерекурсивную дискретную цепь. На вход дискретной цепи подается непериодический сигнал . 1.1 Построить график дискретного сигнала. 1.2 Рассчитать спектр ДС с шагом . Построить амплитудный спектр. 1.3 Построить дискретную цепь. Записать ее передаточную функцию, определить импульсную характеристику цепи. 1.4 Определить сигнал на выходе цепи по формуле линейной свертки Построить график выходного сигнала. 1.5 Рассчитать спектр
User IT-STUDHELP : 18 ноября 2021
880 руб.
promo
Контрольная работа по дисциплине: Цифровая обработка сигналов. Вариант №04
Задача No1. Непрерывное сообщение передается от источника к получателю по дискретному каналу связи. 1. Изобразить обобщенную структурную схему системы связи для передачи непрерывных сообщений дискретными сигналами, привести подробное описание назначения входящих в нее блоков. Преобразование сообщения и сигналов в системе связи проиллюстрировать (качественно) приведением временных и спектральных диаграмм для следующих точек тракта: - на выходе источника непрерывного сообщения (сигнала); - на вхо
User DreaMaster : 14 сентября 2014
60 руб.
Создание санатория в форме унитарного предприятия
О государственной политике в области санаторно-курортного дела Здоровье населения - один из важнейших элементов социального, культурного и экономического развития нашей страны. Именно поэтому Правительство Российской Федерации выделяет вопросы здоровья населения и развития здравоохранения в числе главных приоритетов своей деятельности. На коллегии Министерства здравоохранения Российской Федерации в марте 2003 года были подведены итоги хода реформ и определены задачи по развитию здравоохранения
User Elfa254 : 25 сентября 2013
Гидравлика Задача 15.19 Вариант 66
Насос работает на гидравлическую сеть. Напорная характеристика насоса задана в безмерных параметрах в таблице 1. Параметры насоса (Q0 и H0) и гидравлической сети (Нг, d, l, λ, Σξ) заданы в таблице 2. По заданным параметрам Q0 и H0 рассчитать и построить напорную характеристику насоса H=f(Q). Рассчитать и построить характеристику потребного напора гидравлической сети Нпотр=f(Q). Определить параметры рабочего режима насоса и гидравлической сети (рабочую точку A). (Определить напор, подачу и
User Z24 : 24 декабря 2025
200 руб.
Гидравлика Задача 15.19 Вариант 66
up Наверх