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

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

material.view.file_icon
material.view.file_icon
material.view.file_icon test.txt
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 Лабораторная работа №3.doc
material.view.file_icon
material.view.file_icon su1.grm
material.view.file_icon su2.grm
material.view.file_icon su3.grm
material.view.file_icon su4.grm
material.view.file_icon su5.grm
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 Лабораторная работа №4.doc
material.view.file_icon
material.view.file_icon 1.gen
material.view.file_icon 2.gen
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 Лабораторная работа №5.doc
material.view.file_icon
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
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 Unit1.cpp
material.view.file_icon Unit1.dfm
material.view.file_icon Unit1.h
material.view.file_icon Unit1.obj
material.view.file_icon Лабораторная работа №1.doc
material.view.file_icon
material.view.file_icon
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 ProjectGroup1.bpg
material.view.file_icon Unit1.cpp
material.view.file_icon Unit1.dfm
material.view.file_icon Unit1.h
material.view.file_icon Unit1.obj
material.view.file_icon Лабораторная работа №2.doc
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Программа для просмотра текстовых файлов
  • Microsoft Word

Описание

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

Лабораторная работа №2
1. Постановка задачи
Пусть регулярный язык задаётся конечным автоматом – ДКА (теоретический материал разделов 1.5, 2.2). Написать программу, которая будет проверять по заданному автомату вводимую цепочку и делать вывод о том, принадлежит ли она рассматриваемому регулярному языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку – например, «в цепочке присутствуют посторонние символы», «после прочтения цепочки автомат не пришёл в конечное состояние» и т.п. Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры.
На вход программы подаётся ДКА (множество состояний, алфавит языка, начальное состояние, множество заключительных состояний, функция переходов в виде таблицы) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Программа должна предоставлять пользователю возможность изменять начальное и конечные состояния с сохранением введённой функции переходов для заданного автомата.
Выход – отображение на экране процесса проверки цепочки в виде последовательной смены конфигураций и вывод результата – сообщения, принадлежит ли цепочка языку.
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.
Дополнительно:
Предоставить пользователю возможность не только вводить данные с клавиатуры, но и загружать автомат из файла (выбор – в соответствующем пункте меню или нажатием кнопки в исходном окне программы). При этом следует накладывать определённые ограничения на формат файла и производить соответствующие проверки во избежание загрузки некорректных данных.
Также по желанию пользователя результаты помимо вывода на экран сохранять в файле. Выбор – аналогично загрузке данных.

Лабораторная работа №3
1. Постановка задачи
Пусть контекстно-свободный язык задаётся детерминированным автоматом с магазинной памятью – ДМПА (теоретический материал раздела 3.1). Написать программу, которая будет проверять для вводимой цепочки, принадлежит ли она заданному КС-языку. В случае отрицательного ответа необходимо давать пояснение, по какой причине цепочка не принадлежит языку (аналогично лаб. раб №2) Исходный автомат вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выполняя его до тех пор, пока не возникнет желание закончить работу.
На вход программы подаётся ДМПА (множество состояний, алфавит языка, алфавит магазина, начальное состояние, начальное содержимое стека, множество заключительных состояний, функция переходов в виде списка правил) и проверяемая цепочка символов (может вводиться многократно, т.е. возможно проверить любое количество цепочек). При этом в проверяемую цепочку могут входить и символы, не принадлежащие алфавиту языка; цепочка может быть и пустой.
Дополнительно:
Предоставить пользователю возможность не только вводить данные с клавиатуры, но и загружать автомат из файла (выбор – в соответствующем пункте меню или нажатием кнопки в исходном окне программы). При этом следует накладывать определённые ограничения на формат файла и производить соответствующие проверки во избежание загрузки некорректных данных.
Также по желанию пользователя результаты помимо вывода на экран сохранять в файле. Выбор – аналогично загрузке данных.

Лабораторная работа №4
1. Постановка задачи
Пусть дана схема синтаксически управляемого перевода (теоретический материал раздела 4.2). Написать программу, которая будет выполнять перевод цепочек с одного языка на другой в соответствии с этой схемой. При невозможности выполнить перевод (цепочка не строится по правилам входной грамматики) необходимо выводить на экран соответствующее сообщение.
Правила СУ-схемы считывать из файла (предоставив пользователю возможность редактировать их на экране); цепочки вводить с клавиатуры, процесс перевода отображать на экране. Предусмотреть возможность выполнения перевода любого количества цепочек для заданной схемы.
На вход программы подаётся схема СУ-перевода (алфавиты входного и выходного языков, множество нетерминальных символов, правила вывода, целевой символ) и цепочка языка, которую необходимо перевести (может вводиться многократно, т.е. возможно перевести любое количество цепочек). Цепочка может быть и не относящейся к исходному языку…
Работа программы может быть организована по-разному. В качестве основного задания допустимо использовать материалы лабораторной работы №1. На первом этапе в соответствии с входной грамматикой схемы СУ-перевода попытаться сгенерировать цепочку, поданную на вход (поскольку её длина известна, можно генерировать только цепочки этой длины). При генерации фиксировать номера использованных правил. В случае успешной генерации выполнить второй этап – применяя номера использованных правил, получать одновременно входную и выходную цепочки по правилу вывода и соответствующему ему элементу перевода.
На выходе – отображение процесса перевода и результирующая цепочка языка.

Лабораторная работа №5
1. Постановка задачи
Пусть дан преобразователь с магазинной памятью; написать программу, которая будет выполнять перевод цепочек с одного языка на другой с помощью заданного преобразователя (теоретический материал раздела 4.2). При невозможности выполнить перевод (цепочка не принадлежит исходному языку) необходимо выводить на экран соответствующее сообщение.
Исходный преобразователь вводить с клавиатуры в соответствии с определённым форматом. Ввод цепочек также производить с клавиатуры, выполняя его до тех пор, пока не возникнет желание закончить работу. Процесс перевода цепочки в виде последовательной смены конфигураций отображать на экране.
На вход программы подаётся ДМП-преобразователь (множество состояний, алфавиты входного и выходного языков, алфавит магазина, начальное состояние, начальное содержимое стека, множество заключительных состояний, функция переходов в виде списка правил) и проверяемая цепочка символов (аналогично лаб. раб. №3).
Рекомендуется за основу взять программу лабораторной работы №3, дополнив исходные данные выходным алфавитом, функцию переходов – в соответствии с определением преобразователя, а конфигурации – выходными цепочками.
Выход: отображение на экране процесса перевода цепочки в виде последовательной смены конфигураций преобразователя, результат перевода – полученная цепочка
Проверить работу программы на примерах из лекций и задачах из контрольных вопросов.
Дополнительно:
Предоставить пользователю возможность не только вводить данные с клавиатуры, но и загружать преобразователь из файла (аналогично лабораторной работе №2)

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

Декабрь 2015 года
Преподаватель: Бах Ольга Анатольевна
Теория языков программирования и методы трансляции. Лабораторная работа №1
Теория языков программирования и методы трансляции_Лабораторная работа 1 Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы.
User bvv1975 : 26 января 2016
20 руб.
Теория языков программирования и методы трансляции. Лабораторная работа №1.
Лабораторная работа № 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику
User zhekaersh : 20 февраля 2015
70 руб.
Лабораторная работа №1. Теория языков программирования и методы трансляции. Все варианты.
Лабораторная работа № 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматик
User SibGUTI2 : 24 сентября 2016
30 руб.
Лабораторная работа №1. Теория языков программирования и методы трансляции. Все варианты.
Лабораторная работа № 1 Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматик
User SibGUTI2 : 7 сентября 2016
35 руб.
Лабораторная работа № 1 Предмет : «Теория языков программирования и методы трансляции» вариант 1
Задание Лабораторная работа № 1 1. ПОСТАНОВКА ЗАДАЧИ Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать за
User Araxic : 3 февраля 2017
100 руб.
Теория языков программирования и методы трансляции. Лабораторные работы №№1-5. Вариант №1
Лабораторная работа 1. 1. Постановка задачи Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или
User djigorfan : 14 апреля 2013
1200 руб.
Теория языков программирования и методы трансляции. ЛАБОРАТОРНАЯ РАБОТА № 1. Вариант № 18
Генерация цепочек языка Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе грамматику или вводить свою с клави
User Shamrock : 27 января 2015
250 руб.
Теория языков программирования и методы трансляции. Лабораторная работа №1. Вариант №3
Лабораторная работа № 1 Генерация цепочек языка Задание Пусть язык задан контекстно-свободной грамматикой (теоретический материал разделов 1.1–1.4). Написать программу, которая по заданной грамматике будет генерировать ВСЕ цепочки языка в некотором диапазоне длин. Использовать только левосторонний или правосторонний вывод! Диапазон длин генерируемых цепочек должен задаваться пользователем при запуске программы. Предусмотреть возможность выбора пользователю – использовать заданную в программе гр
User JulDir : 22 сентября 2013
49 руб.
Обратная сила закона. Теория и практика применения на примере преступлений против собственности
Введение. 1. Действие уголовного закона во времени. Обратная сила уголовного закона. 1.1. Понятие действия уголовного закона во времени; 1.2. Понятие обратной силы уголовного закона; 1.3. Признание нормы более мягкой по диспозиции; 1.4. Признание нормы более мягкой по санкции; 2. Декриминализация преступлений против собственности в связи с принятием УК 1996 г. 3. Обратная сила норм, имеющих простые составы, и составов, имеющих индивидуальные квалифицирующие признаки. 3.1. Кража. 3.2. Мошенничест
User Lokard : 12 марта 2014
5 руб.
Расчет процессов с влажным воздухом МИИТ Задача 3 Вариант 15
ТЕРМОДИНАМИЧЕСКОЕ ИССЛЕДОВАНИЕ ПРОЦЕССОВ ИЗМЕНЕНИЯ ПАРАМЕТРОВ ВЛАЖНОГО ВОЗДУХА Для двух потоков влажного воздуха после их смешения и тепловлажностной обработки в соответствии с заданными параметрами определить: 1 Параметры смеси двух потоков воздуха на входе в установку для тепловлажностной обработки (энтальпию, относительную влажность, влагосодержание, температуру по сухому и мокрому термометру, температуру точки росы, молярную массу, газовую постоянную). 2 Количество теплоты и влаги,
User Z24 : 20 октября 2025
200 руб.
Расчет процессов с влажным воздухом МИИТ Задача 3 Вариант 15
Математическая теория сигналов. 5 семестр. Контрольная работа.
Исходные данные задаются в цифрах номера паспорта (№ 878652). Контрольное задание №1. Задача №1. Определить динамический диапазон D речевого сигнала, если его пик-фактор Q = 8,7 дБм, а среднее значение Рср в 2 раза больше минимального значения Рмин. Задача №2. Определить какое количество информации содержатся в цифровом сигнале, если тактовая частота его передачи равна Т = 86 кГц, а количество уровней передачи l = 2. Задача №3. Найти остаточное затухание канала состоящего из цепочки 3-х усили
User skaser : 9 октября 2011
50 руб.
Теплотехника 5 задач Задача 5 Вариант 31
Определить потребную поверхность рекуперативного теплообменника, в котором вода нагревается горячими газами. Расчет произвести для прямоточной и противоточной схем движения. Значения температур газа t′1 и t″1, воды t′2 и t″2, расхода воды M и коэффициента теплопередачи K выбрать из табл.3.
User Z24 : 4 января 2026
200 руб.
Теплотехника 5 задач Задача 5 Вариант 31
up Наверх