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

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

material.view.file_icon
material.view.file_icon
material.view.file_icon grammar.txt
material.view.file_icon
material.view.file_icon
material.view.file_icon Lab1.exe
material.view.file_icon Lab1.ilk
material.view.file_icon Lab1.pdb
material.view.file_icon
material.view.file_icon
material.view.file_icon BuildLog.htm
material.view.file_icon Lab1.exe.embed.manifest
material.view.file_icon Lab1.exe.embed.manifest.res
material.view.file_icon Lab1.exe.intermediate.manifest
material.view.file_icon main.obj
material.view.file_icon mt.dep
material.view.file_icon vc90.idb
material.view.file_icon vc90.pdb
material.view.file_icon grammar.txt
material.view.file_icon Lab1.vcproj
material.view.file_icon Lab1.vcproj.SYSTEMNIK.limited.user
material.view.file_icon main.cpp
material.view.file_icon main.h
material.view.file_icon
material.view.file_icon BuildLog.htm
material.view.file_icon Lab1.exe.intermediate.manifest
material.view.file_icon main.obj
material.view.file_icon mt.dep
material.view.file_icon vc90.idb
material.view.file_icon vc90.pdb
material.view.file_icon Lab1.ncb
material.view.file_icon Lab1.sln
material.view.file_icon Lab1.suo
material.view.file_icon
material.view.file_icon Lab1.exe
material.view.file_icon Lab1.pdb
material.view.file_icon Lab1.exe
material.view.file_icon Лабораторная работа_1.doc
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Программа для просмотра текстовых файлов
  • Microsoft Word

Описание

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

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

Работа зачтена без замечаний, 2015г.
Лабораторная работа № 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 По дисциплине: Теория языков программирования и методы трансляции. Тема: Генерация цепочек языка. Вариант 3
Лабораторная работа No 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику
User alexadubinina : 20 ноября 2024
400 руб.
Теория языков программирования и методы трансляции Лабораторная работа № 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 руб.
Генерация цепочек языка
Пусть язык задан контекстно-свободной грамматикой. Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клавиатуры.
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 Сергей38 : 26 января 2023
200 руб.
Лабораторная работа №1 по дисциплине «Теория языков программирования и методы трансляции»
Гужавина И.В. Учет в зарубежных странах
ОДЕРЖАНИЕ ВВЕДЕНИЕ МЕЖДУНАРОДНЫЕ ПРИНЦИПЫ И СИСТЕМЫ УЧЕТА Роль и значение бухгалтерского учета Правовое регулирование бухгалтерского учета за рубежом Классификация моделей (систем) бухгалтерского учета Международные стандарты учета и отчетности Принципы бухгалтерского учета Виды бухгалтерской информации. Управленческий и финансовый учет БУХГАЛТЕРСКИЙ УЧЕТ В США Экономико-правовые основы и принципы учета Этапы учетно-аналитического цикла Финансовое положение и бухгалтерское уравнение Классификаци
User GnobYTEL : 1 февраля 2012
2 руб.
Онлайн-тест по дисциплине: Экология
Вопрос №1 Что является предметом исследования экологии? Биологические макросистемы (популяции, биоценозы, экосистемы) и их динамика во времени и пространстве Биологические особенности живых организмов Неорганическая составляющая экосистем Окружающая среда Все перечисленное верно Вопрос №2 Глобальный мониторинг осуществляется на _______________ уровне биосферном региональном локальном территориальном Вопрос №3 Для установления допустимых выбросов газообразных веществ применяется экол
User IT-STUDHELP : 3 февраля 2021
600 руб.
promo
Установка для вибродуговой наплавки. Планировка участка по ремонту карданных валов. Колесо червячное,Редуктор червячный,Червяк,Вал-Спецификация-Проект участка по ремонту карданных валов с разработкой оборудования
Установка для вибродуговой наплавки (Чертеж общего вида)-Планировка участка по ремонту карданных валов-Деталировка:Колесо червячное,Редуктор червячный,Червяк,Вал-Спецификация-Проект участка по ремонту карданных валов с разработкой оборудования-Технология машиностроения-Детали машин-Деталировка-Сборочный чертеж-Чертежи-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Графическая часть-Оборудование-Машины и механизмы-Агрегаты-Установки-Комплексы-Узлы-Детали-Курсовая работа-Дипломная рабо
648 руб.
Установка для вибродуговой наплавки. Планировка участка по ремонту карданных валов. Колесо червячное,Редуктор червячный,Червяк,Вал-Спецификация-Проект участка по ремонту карданных валов с разработкой оборудования
Теплотехника КемТИПП 2014 Задача А-5 Вариант 69
В паровом подогревателе вода нагревается от температуры t′ до температуры t″. Определить поверхность нагрева подогревателя и расход пара для противоточной схемы движения теплоносителей, если: — давление пара p, степень сухости его x; — температура конденсата tк; — производительность аппарата по воде m; — коэффициент теплоотдачи со стороны пара α1, со стороны воды α2. Толщина стальной стенки теплообменника 3 мм. Стенка покрыта слоем накипи толщиной 0,5 мм. Коэффициент полезно
User Z24 : 15 февраля 2026
200 руб.
Теплотехника КемТИПП 2014 Задача А-5 Вариант 69
up Наверх