Лабораторная работа 3 по дисциплине: Теория языков программирования и методы трансляции. Тема. Моделирование работы МПА.
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Лабораторная работа № 3 Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выполняя его до тех пор, пока не возникнет желание закончить работу.
На вход программы подаётся ДМПА (множество состояний, алфавит языка, алфавит магазина, начальное состояние, начальное содержимое стека, множество заключительных состояний, функция переходов в виде списка правил) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Рекомендуется для ввода исходных данных использовать соответствующую форму с полями выбора. При вводе функции переходов не рекомендуется предоставлять пользователю излишнюю свободу действий.
Выход – отображение на экране процесса проверки цепочки в виде последовательной смены конфигураций и вывод результата – сообщения, принадлежит ли цепочка языку.
Внимание!!! В ходе проверки цепочки ДМПА может проделывать пустые такты не только после прочтения всей цепочки, но и в её середине. Внимательно прочтите соответствующий раздел лекций 3.1.
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.
Дополнительно: Предоставить пользователю возможность вносить некоторые изменения в исходные данные без полного их обновления.
Контрольные вопросы:
1. Обязательно ли должна быть задана функция переходов для всех возможных сочетаний «состояние, входной символ, символ стека»? Как поведёт себя автомат, если при проверке цепочки встретит неизвестную комбинацию?
2. В каком случае цепочка считается допущенной автоматом, а в каком – нет?
3. Возможно ли в качестве алфавита магазина использовать символы, отличные от алфавита языка? Изменится ли работа программы, если изменить только алфавит магазинных символов (и соответствующие правила функции переходов)? Если в Вашей программе это недопустимо – доработайте программу.
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выполняя его до тех пор, пока не возникнет желание закончить работу.
На вход программы подаётся ДМПА (множество состояний, алфавит языка, алфавит магазина, начальное состояние, начальное содержимое стека, множество заключительных состояний, функция переходов в виде списка правил) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Рекомендуется для ввода исходных данных использовать соответствующую форму с полями выбора. При вводе функции переходов не рекомендуется предоставлять пользователю излишнюю свободу действий.
Выход – отображение на экране процесса проверки цепочки в виде последовательной смены конфигураций и вывод результата – сообщения, принадлежит ли цепочка языку.
Внимание!!! В ходе проверки цепочки ДМПА может проделывать пустые такты не только после прочтения всей цепочки, но и в её середине. Внимательно прочтите соответствующий раздел лекций 3.1.
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.
Дополнительно: Предоставить пользователю возможность вносить некоторые изменения в исходные данные без полного их обновления.
Контрольные вопросы:
1. Обязательно ли должна быть задана функция переходов для всех возможных сочетаний «состояние, входной символ, символ стека»? Как поведёт себя автомат, если при проверке цепочки встретит неизвестную комбинацию?
2. В каком случае цепочка считается допущенной автоматом, а в каком – нет?
3. Возможно ли в качестве алфавита магазина использовать символы, отличные от алфавита языка? Изменится ли работа программы, если изменить только алфавит магазинных символов (и соответствующие правила функции переходов)? Если в Вашей программе это недопустимо – доработайте программу.
Дополнительная информация
Работа зачтена без замечаний, 2015г.
Похожие материалы
Теория языков программирования и методы трансляции. Лабораторная работа №3. Моделирование работы МПА. Для всех вариантов.
nik200511
: 29 декабря 2015
Лабораторная работа № 3 Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. В
36 руб.
Лабораторная работа №3 по дисциплине «Теория языков программирования и методы трансляции»
Сергей38
: 26 января 2023
Лабораторная работа № 3 Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Вв
200 руб.
Лабораторная работа №3 по дисциплине Теория языков программирования и методы трансляции
Некто
: 16 сентября 2018
Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также произв
100 руб.
Лабораторная работа №3 по дисциплине «Теория языков программирования и методы трансляции»
1231233
: 23 января 2012
Моделирование работы МПА
Содержание
1. Постановка задачи 2
2. Описание входных данных программы и её результатов 3
3.Описание основных переменных, основных блоков и подпрограмм 4
4. Алгоритм решения задачи 5
5. Текст программы 6
6. Результаты работы 17
7. Ответы на контрольные вопросы 19
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадле
23 руб.
Лабораторная работа №3 по дисциплине "Теория языков программирования и методы трансляции"
uksne
: 22 августа 2011
Моделирование работы МПА
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку. Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выпол
250 руб.
Теория языков программирования и методы трансляции
Илья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 руб.
Другие работы
Модернизация кромкообрезного станка
SeVeN
: 18 апреля 2012
Рассматриваемая в данном проекте конструкция кромкообрезного станка и типичных образцов продукции современного машиностроительного производства.
Данный проект представляет собой попытку разработать современную конструкцию специального станка, позволяющего с большой производительностью и качеством производить обрезку кромок на деталях типа тел вращения.
Все принятые технические решения имеют в данном проекте технико-экономическое обоснование, которое подтверждается их эффективностью.
Введение…………
200 руб.
Комплексная механизация технологических процессов откормочной фермы КРС
Рики-Тики-Та
: 1 мая 2011
СОДЕРЖАНИЕ
Введение
1 Разработка генерального плана животноводческого объекта
1.1. Расчет структуры стада и условного поголовья
1.2. Характеристика заданной системы содержания животных
1.3. Обоснование и разработка распорядка дня работы фермы
1.4. Выбор рациона кормления, расчет суточного и годового количества кормов, разработка суточного графика кормления
1.5. Расчет выхода основной и вспомогательной продукции
1.6. Выбор типовых проектов основных и вспомогательных зданий и сооружений, хра
55 руб.
Соединения неразъемные. Соединение сваркой. Вариант 1
Laguz
: 20 сентября 2024
СОЕДИНЕНИЯ НЕРАЗЪЕМНЫЕ
Соединения сваркой
Задание № 9
Сделано в компас 16
Вариант 1 НГАУ
Файлы компаса можно просматривать и сохранять в нужный формат бесплатной программой КОМПАС-3D Viewer.
160 руб.
Контрольная работа по дисциплине «Дискретная математика». 7-й вариант
te86
: 13 июля 2012
Задано универсальное множество U={10,11,12,13,14} и множества A={10,11,12};B={12,13,14};C={10,14};D={12}. Найти результаты действий a) ; б) ; в) ; г) ; д) и каждое действие проиллюстрировать с помощью диаграммы Эйлера-Венна.
Решение:
Диаграммы Эйлера-Венна – это геометрическое представление множеств. Множество U изображается прямоугольником, рассматриваемые множества – фигурами (окружностями). Для выделения результата применяется штриховка.
а)
проиллюстрируем действие с помощью ди
20 руб.