Лабораторная работа № 2 по предмету: «Теория языков программирования и методы трансляции». Вариант № 1
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Описание
Содержание
1. ПОСТАНОВКА ЗАДАЧИ 3
2. ОПИСАНИЕ ВХОДНЫХ ДАННЫХ ПРОГРАММЫ И ЕЕ РЕЗУЛЬТАТОВ 3
3. ОПИСАНИЕ ОСНОВНЫХ ПЕРЕМЕННЫХ, БЛОКОВ И ПОДПРОГРАММ 8
4. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ 8
5. ТЕКСТ ПРОГРАММЫ 8
6. РЕЗУЛЬТАТЫ РАБОТЫ 22
7. КОНТРОЛЬНЫЕ ВОПРОСЫ 23
1. Постановка задачи
Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символы», «после прочтения цепочки автомат не пришёл в конечное состояние» и т.п. Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры.
На вход программы подаётся ДКА (множество состояний, алфавит языка, начальное состояние, множество заключительных состояний, функция переходов в виде таблицы) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Программа должна предоставлять пользователю возможность изменять начальное и конечные состояния с сохранением введённой функции переходов для заданного автомата.
Выход – отображение на экране процесса проверки цепочки в виде последовательной смены конфигураций и вывод результата – сообщения, принадлежит ли цепочка языку.
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.
Дополнительно:
Предоставить пользователю возможность не только вводить данные с клавиатуры, но и загружать автомат из файла (выбор – в соответствующем пункте меню или нажатием кнопки в исходном окне программы). При этом следует накладывать определённые ограничения на формат файла и производить соответствующие проверки во избежание загрузки некорректных данных.
Также по желанию пользователя результаты помимо вывода на экран сохранять в файле. Выбор – аналогично загрузке данных.
1. ПОСТАНОВКА ЗАДАЧИ 3
2. ОПИСАНИЕ ВХОДНЫХ ДАННЫХ ПРОГРАММЫ И ЕЕ РЕЗУЛЬТАТОВ 3
3. ОПИСАНИЕ ОСНОВНЫХ ПЕРЕМЕННЫХ, БЛОКОВ И ПОДПРОГРАММ 8
4. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ 8
5. ТЕКСТ ПРОГРАММЫ 8
6. РЕЗУЛЬТАТЫ РАБОТЫ 22
7. КОНТРОЛЬНЫЕ ВОПРОСЫ 23
1. Постановка задачи
Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символы», «после прочтения цепочки автомат не пришёл в конечное состояние» и т.п. Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры.
На вход программы подаётся ДКА (множество состояний, алфавит языка, начальное состояние, множество заключительных состояний, функция переходов в виде таблицы) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Программа должна предоставлять пользователю возможность изменять начальное и конечные состояния с сохранением введённой функции переходов для заданного автомата.
Выход – отображение на экране процесса проверки цепочки в виде последовательной смены конфигураций и вывод результата – сообщения, принадлежит ли цепочка языку.
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.
Дополнительно:
Предоставить пользователю возможность не только вводить данные с клавиатуры, но и загружать автомат из файла (выбор – в соответствующем пункте меню или нажатием кнопки в исходном окне программы). При этом следует накладывать определённые ограничения на формат файла и производить соответствующие проверки во избежание загрузки некорректных данных.
Также по желанию пользователя результаты помимо вывода на экран сохранять в файле. Выбор – аналогично загрузке данных.
Дополнительная информация
В архиве отчет+программа, использованная в работе.
Отличная работа!
Специальность ПОВТиАС (ПОиВТ)
Отличная работа!
Специальность ПОВТиАС (ПОиВТ)
Похожие материалы
Лабораторная работа № 2 Предмет : «Теория языков программирования и методы трансляции» вариант 1
Araxic
: 3 февраля 2017
Задание
Лабораторная работа № 2
1. ПОСТАНОВКА ЗАДАЧИ
Моделирование работы ДКА
Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символ
100 руб.
Теория языков программирования и методы трансляции
Илья272
: 5 ноября 2023
Лабораторные работы основаны на лекционном материале; каждая выполняется после изучения соответствующего теоретического раздела. До выполнения лабораторной работы нужно внимательно разобраться с примерами, ответить на контрольные вопросы изученного теоретического раздела, а также решить задачи, предлагаемые в составе контрольных вопросов.
Каждая работа снабжена методическими указаниями, сопровождающими текст задания. Рекомендуется внимательно читать задание и выполнять работу в строгом соответс
1300 руб.
Теория языков программирования и методы трансляции
piligrim-24
: 11 апреля 2012
Билет No1
1) Классификация грамматик и языков по Хомскому. Проиллюстрировать на примерах (примеры должны быть свои).
2) Нисходящий распознаватель языков с возвратами. Алгоритм распознавателя с подбором альтернатив. Проиллюстрировать на примере (пример должен быть свой).
3) Построить детерминированный автомат с магазинной памятью P (с опустошением стека), допускающий язык L(P) = {a n b n c 2k k > 0, n 0}. Построить КС-грамматику для задания этого же языка.
50 руб.
Теория языков программирования и методы трансляции
piligrim-24
: 3 марта 2012
Лабораторная работа № 3
По дисциплине «Теория языков программирования и методы трансляции»
Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный авт
50 руб.
Теория языков программирования и методы трансляции. Курсовая работа. Вариант 1.
nik200511
: 7 декабря 2018
Написать программу для автоматического построения детерминированного конечного автомата (ДКА) по словесному описанию языка.
Вход программы: алфавит языка, обязательная начальная подцепочка, кратность длины всех цепочек языка, цепочки для распознавания.
Выход: построенный ДКА (все 5 элементов), результат проверки цепочек.
Подробно:
Язык задан своим алфавитом, обязательной начальной цепочкой и указанием кратности длины всех цепочек языка. В начальной цепочк
144 руб.
Теория языков программирования и методы трансляции. Контрольная работа. Вариант №1
djigorfan
: 14 апреля 2013
Задания:
No1 Пусть регулярный язык задан своим описанием:
Множество всех цепочек из {0,1,a}*, которые содержат подцепочку ’01a’ и чётное количество единиц. Например, ‘01a1’, ‘101a’, ‘101a101’ и т.п.
Построить регулярное выражение, задающее этот язык.
No2 Построить регулярную грамматику, задающую язык из задачи No1.
No3 Построить КС-грамматику, задающую язык из задачи No1. Сгенерировать две цепочки языка по построенной грамматике. Процесс генерации цепочек языка записать в виде цепочки вывода, ук
600 руб.
Теория языков программирования и методы трансляции билет 11
09809845
: 4 ноября 2022
Билет No 11
Факультет ИВТ (ДО) Курс 4 Семестр 7
Дисциплина Теория языков программирования и методы трансляции
1) Автоматные грамматики – определение, способ приведения регулярной грамматики к автоматному виду. Проиллюстрировать на примере (пример должен быть свой).
2) Схема работы компилятора, основные этапы компиляции. Краткая характеристика основных фаз компиляции.
3) Пусть дана грамматика для арифметических выражений: G ({+,–,/,*,a,b,(,)}, {S,T,E}, P, S), где правила P имеют вид:
S S+TS–TT
800 руб.
Теория языков программирования и методы трансляции. Билет №9
IT-STUDHELP
: 30 декабря 2021
Билет No 9
Факультет ИВТ (ДО) Курс 4 Семестр 7
Дисциплина Теория языков программирования и методы трансляции
1) Регулярные множества и регулярные выражения (РВ). Определение, свойства РВ. Проиллюстрировать на примерах (примеры должны быть свои).
2) Алгоритм восходящего анализа языков без возвратов, основанный на грамматиках операторного предшествования. Проиллюстрировать на примере (пример должен быть свой).
3) Построить и изобразить графически детерминированный конечный автомат, распозн
500 руб.
Другие работы
Курсовая работа. 3-й семестр. Структуры и алгоритмы обработки данных
oksana
: 22 марта 2015
Дисциплина: «Структуры и алгоритмы обработки данных»
(часть 2 Древовидные структуры данных)
Вариант 21.
B = 4 ВАЖНО:(файл base4.dat)
200 руб.
Приспособление для нарезки сегментных шпонок МЧ00.32.00.00
coolns
: 10 октября 2019
Приспособление для нарезки сегментных шпонок автокад
Приспособление для нарезки сегментных шпонок чертеж
Приспособление для нарезки сегментных шпонок чертежи
Приспособление для нарезки сегментных шпонок деталирование
Приспособление для нарезки сегментных шпонок скачать
Приспособление предназначено для производства сегментных шпонок из заготовок (готовых шайб) на горизонтально-фрезерном станке.
В корпус поз. 1 вставлен прихват поз. 2, соединенный шпилькой поз. 8 с поршнем поз. 5 цилиндра обратно
260 руб.
Характеристика УП "НИИЭВМ" и выпускаемой продукции
Qiwir
: 8 ноября 2013
1. Общая характеристика предприятия, его организационно-управленческая структура
НИИЭВМ был организован в 1958 г., как СКБ завода им. Г.К. Орджоникидзе, как самостоятельное научно-исследовательское учреждение – с 1964 г. Научно-исследовательский институт электронных вычислительных машин с 1972 г., с 1996 г. – ГП «НИИЭВМ», с 2000 г. – УП «НИИЭВМ».
УП «НИИЭВМ» был создан как союзный головной НИИ по разработке ЭВМ среднего класса, программных продуктов и систем на их основе. УП «НИИЭВМ» руководи
10 руб.
Маркетингове дослідження ринку
Aronitue9
: 17 марта 2012
Зміст
Вступ
Анотація
Оцінка привабливості ринків і конкурентних позицій
Оцінка привабливості ринку Росії і конкурентних позицій з врахуванням ваг важливості критеріїв
Оцінка привабливості ринку Болгарії і конкурентних позицій з врахуванням ваг важливості критеріїв
Оцінка привабливості ринку Придністровя і конкурентних позицій з врахуванням ваг важливості критеріїв
Проведемо аналіз і обґрунтуємо доцільність вибору країн для імпорту блоків живлення до комп’ютерів в Україну
Аналіз конюктури ринку п
20 руб.