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

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

material.view.file_icon
material.view.file_icon отчет_курсовая_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 kursLangTheory.exe
material.view.file_icon kursLangTheory.exe.config
material.view.file_icon kursLangTheory.pdb
material.view.file_icon Form1.cs
material.view.file_icon Form1.Designer.cs
material.view.file_icon Form1.resx
material.view.file_icon kursLangTheory.csproj
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 kursLangTheory.csproj.CoreCompileInputs.cache
material.view.file_icon kursLangTheory.csproj.FileListAbsolute.txt
material.view.file_icon kursLangTheory.csproj.GenerateResource.cache
material.view.file_icon kursLangTheory.csprojAssemblyReference.cache
material.view.file_icon kursLangTheory.exe
material.view.file_icon kursLangTheory.Form1.resources
material.view.file_icon kursLangTheory.pdb
material.view.file_icon kursLangTheory.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 kursLangTheory.sln
material.view.file_icon kursLangTheory.exe
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word
  • Программа для просмотра текстовых файлов

Описание

Задание на курсовую работу.
Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка.
Вход программы: алфавит языка, обязательная начальная подцепочка, выбранный символ алфавита, его кратность (натуральное число), 2 числа – диапазон длин для генерации цепочек.
Выход: построенное регулярное выражение, результат генерации цепочек.
Подробно:
Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности вхождений некоторого символа во все цепочки языка. В начальной цепочке не должно находиться символов, не содержащихся в алфавите. В крайнем случае она может быть и пустой. Кратность числа вхождений выбранного символа задаётся любым натуральным числом. Кратность, равная единице, равносильна отсутствию ограничений на вхождения данного символа, т.е. он может встречаться в цепочках любое количество раз. При любом значении кратности количество вхождений символа в цепочку может быть и нулевым.
Программа должна:
1. по предложенному описанию регулярного языка строить РВ, генерирующее этот язык, в том виде, как было рассмотрено в теории, раздел 2.1.1;
2. с помощью построенного РВ генерировать все цепочки языка в заданном пользователем диапазоне длин.
При генерации цепочек языка по РВ можно использовать любые структуры и алгоритмы, в том числе и прямой перебор.
Рассмотрим пример построения регулярного выражения.
Задан язык: алфавит {0,1,a,b}, обязательная начальная цепочка ‘01a’, количество вхождений символа ‘а’ кратно 2. Анализируем задание: язык будет состоять из цепочек с чётным количеством символов ‘а’, начинающихся с ‘01a’, например {01аa, 01аba, 01аab, 01аac, 01аaaa,…}. Для начала определим минимально возможную цепочку этого языка. Это ‘01aa’ – она удовлетворяет всем условиям и является при этом самой короткой. Это основа нашего РВ.
Удлинить эту цепочку можно, поместив после неё или между цепочкой ’01a’ и ‘a’ в ней любое количество любых символов алфавита, за исключением символа ‘a’ – для него нужно подсчитывать количество, поэтому его следует рассматривать особо. Заданную цепочку ’01a’ разрывать нельзя. Для генерации любого количества символов используется итерация, а выбор одного из нескольких символов записывается в виде суммы.
Итак, получим 01a(0+1+b)*a(0+1+b)*. Но по построенному таким образом выражению нельзя получить много символов ‘a’. Для увеличения количества ‘a’ можно добавить после построенного выражения (aa)* для сохранения чётности. Но тогда нельзя будет между символами ‘a’ поместить другие символы алфавита. Для того чтобы сделать это возможным, заменим добавляемую конструкцию на ((0+1+b)*a(0+1+b)*a(0+1+b)*) *, сохранив чётность ‘a’ и добавив любое количество других символов. Итоговое регулярное выражение будет иметь вид:
01a(0+1+b)*a(0+1+)*((0+1+b)*а(0+1+b)*a (0+1+b))*. Можно несколько упростить построенное выражение, убрав одну из скобок (0+1+b)* – там, где она повторяется. Окончательный ответ: 01 a(0+1+b)*a(0+1+b)*(а(0+1+b)*a(0+1+b))*.

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

Сдано на отлично в 2023 году.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №3
Курсовая работа Вариант №3 Задание: Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка. Вход программы: алфавит языка, обязательная начальная подцепоч-ка, выбранный символ алфавита, его кратность (натуральное число), 2 чис-ла – диапазон длин для генерации цепочек. Выход: построенное регулярное выражение, результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности вхождений некотор
User IT-STUDHELP : 25 декабря 2022
800 руб.
promo
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №3
Содержание Задание 3 1. Описание алгоритма 4 2. Инструкция пользователя 5 3. Текст программы 7 4. Результаты тестирования 13 Задание Вариант №3 Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка. Вход программы: алфавит языка, обязательная начальная подцепочка, выбранный символ алфавита, его кратность (натуральное число), 2 числа – диапазон длин для генерации цепочек. Выход: построенное регулярное выражение, результат генерации цепоч
User SibGOODy : 18 июля 2018
1400 руб.
promo
КУРСОВАЯ РАБОТА по дисциплине «теория языков программирования и методы трансляции» Вариант №3.
Задание. Написать программу для автоматического построения регулярного выражения (РВ) по словесному описанию языка. Вход программы: алфавит языка, обязательная начальная подцепочка, выбранный символ алфавита, его кратность (натуральное число), 2 числа – диапазон длин для генерации цепочек. Выход: построенное регулярное выражение, результат генерации цепочек. Подробно: Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности вхождений некоторого символа во все цепоч
User freelancer : 5 сентября 2016
100 руб.
КУРСОВАЯ РАБОТА по дисциплине «теория языков программирования и методы трансляции» Вариант №3. promo
Курсовая работа по дисциплине Теория языков программирования и методы трансляции
Написать программу для автоматического построения детерминированного конечного автомата (ДКА) по словесному описанию языка. Вход программы: алфавит языка, обязательная конечная подцепочка, цепочки для распознавания. Выход: построенный ДКА (все 5 элементов), результат проверки цепочек. Подробно: Язык задан своим алфавитом, обязательной конечной цепочкой всех цепочек языка. В конечной цепочке не должно находиться символов, не содержащихся в алфавите. В край
User Некто : 16 сентября 2018
200 руб.
Теория языков программирования и методы трансляции
Лабораторные работы основаны на лекционном материале; каждая выполняется после изучения соответствующего теоретического раздела. До выполнения лабораторной работы нужно внимательно разобраться с примерами, ответить на контрольные вопросы изученного теоретического раздела, а также решить задачи, предлагаемые в составе контрольных вопросов. Каждая работа снабжена методическими указаниями, сопровождающими текст задания. Рекомендуется внимательно читать задание и выполнять работу в строгом соответс
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 По дисциплине «Теория языков программирования и методы трансляции» Моделирование работы МПА Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный авт
User piligrim-24 : 3 марта 2012
50 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №04
Курсовая работа Вариант №04 Постановка задачи Тема: «Программа для автоматического построения детерминированного конечного автомата (ДКА), эквивалентного заданной регулярной грамматике» Написать программу для автоматического построения детерминированного конечного автомата (ДКА), эквивалентного заданной регулярной грамматике. Язык задан регулярной грамматикой, причём она может быть не автоматного вида. При написании программы разработчику разрешается выбрать один из двух типов регулярной грамм
User IT-STUDHELP : 6 июля 2023
800 руб.
Курсовая работа по дисциплине: Теория языков программирования и методы трансляции. Вариант №04 promo
Психологические основания контрглобализации
Прошедший ХХ век войдет в историю как век неукротимых глобалистических стремлений, которые порождали мировые войны и провоцировали региональные революции, разжигали национальную ненависть и поощряли жестокое идеологическое соперничество. И всякий раз в основе этих процессов пристальному наблюдателю удавалось разглядеть настойчивое желание как правящих элит, так и противостоящих им контрэлит приблизиться к осуществлению заветной мечты великих честолюбцев древности – к управлению миром из единого
User VikkiROY : 17 ноября 2012
10 руб.
Шесть родов икон
В святоотеческой литературе можно встретить широкий набор терминов, употребляемых для обозначения, раскрытия или уточнения смысла, вкладываемого автором в понятие "икона". Все понятия на протяжении веков в разных контекстах использовались Св. Отцами в соотнесении с главным термином — икона — для его уточнения и утверждения. Они не заменяли его, а наполняли богатством оттенков, что наблюдается вплоть до окончательной победы иконопочитания в IХ веке, когда термин "икона" стал основным не только дл
User Qiwir : 9 августа 2013
10 руб.
Метрология, стандартизация и сертификация. Лабораторная работа №1.4
Метрология, стандартизация и сертификация Лабораторная работа №1 (LR_1_4) «Упрощенная процедура обработки результатов прямых измерений с многократными наблюдениями» Оценка:Зачет Дата оценки: 2016 Сметанин Владимир Иванович
User olanovo : 30 октября 2016
75 руб.
Менеджмент и маркетинг в информационных технологиях. Экзамен. 3-й вариант.
3 вариант 1. При оптимизации СГ по параметру «время – стоимость» в качестве критерия выбора работ для сокращения их продолжительности используется показатель: А. Суммы удорожания, приходящейся на один день сокращения продолжительности работы В. Сумма удорожания данной работы С. Сумма удорожания всех работ 2. У работ, входящих в завершающее событие, значения полного и частного резервов: А. Равны В. Всегда равны нулю С. Полный резерв больше частного 3. При расчете параметров работ СГ табличным
User nik200511 : 23 февраля 2016
39 руб.
up Наверх