Программирование. Курсовая работа. Вариант №10
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Программа для просмотра текстовых файлов
- Microsoft Word
Описание
Вариант 10
Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка.
Вход программы: алфавит языка, обязательная конечная подцепочка, кратность длины всех цепочек языка, тип грамматики (ЛЛ либо ПЛ), 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика (все 4 элемента), результат генерации цепочек.
Подробно:
Язык задан своим алфавитом, обязательной конечной подцепочкой, которая должна присутствовать во всех цепочках языка, и указанием кратности длины всех цепочек языка. В конечной цепочке не должно находиться символов, не содержащихся в алфавите. В крайнем случае она может быть и пустой. Кратность длины цепочек задаётся любым натуральным числом. Кратность, равная единице, равносильна отсутствию ограничений на длину цепочек.
Программа должна:
1. по предложенному описанию регулярного языка строить регулярную грамматику, генерирующую этот язык, в том виде, как она рассматривалась в теории, раздел 1.3.1;
2. с помощью построенной грамматики генерировать все цепочки языка в заданном пользователем диапазоне длин.
Грамматика должна строиться и праволинейная, и леволинейная. Желаемый тип грамматики выбирается пользователем в меню. Все правила грамматики должны соответствовать выбранному типу! Отдельно следует указывать, какой нетерминальный символ является целевым. Если в грамматике используется пустое правило, то необходимо дать пояснение, каким именно символом обозначается пустая цепочка.
После построения грамматики пользователь может убедиться в её правильности путём генерации всех цепочек языка в том диапазоне длин, который он задаст. Генерацию каждой цепочки языка следует поэтапно отображать на экране в виде цепочки вывода (в соответствии с примерами раздела 1.4.1.). Генерация осуществляется в соответствии с лабораторной работой No1.
Рассмотрим пример построения регулярной грамматики.
Задан язык: алфавит {a,b,c}, обязательная конечная цепочка ‘aab’, кратность длины 2. Анализируем задание: язык будет состоять из цепочек чётной длины, заканчивающихся на ‘aab’, например {сaab, аaab, bааb, caaааb, сabaab, ...}.
Для примера выберем праволинейную грамматику (ПЛ). В правой части её правил вывода может быть только один нетерминал, и он должен располагаться справа от цепочек терминальных символов. Для соблюдения кратности длины цепочек будет использоваться чередование нетерминалов. Длина кратна двум, следовательно, потребуется два нетерминала: S→aA|bA|cA, А→aS|bS|cS. Выход должен происходить по обязательной конечной цепочке ‘aab’, в силу чётности длины цепочек перед ней должен быть как минимум один символ. Следовательно, эта цепочка должна порождаться нетерминалом А: А→aab.
Итак, построенная грамматика имеет вид:
G({a,b,c},{S,A},P,S), Р: S→aA|bA|cA; А→aS|bS|cS|aab.
Написать программу для автоматического построения регулярной грамматики (леволинейной или праволинейной) по словесному описанию языка.
Вход программы: алфавит языка, обязательная конечная подцепочка, кратность длины всех цепочек языка, тип грамматики (ЛЛ либо ПЛ), 2 числа – диапазон длин для генерации цепочек.
Выход: построенная грамматика (все 4 элемента), результат генерации цепочек.
Подробно:
Язык задан своим алфавитом, обязательной конечной подцепочкой, которая должна присутствовать во всех цепочках языка, и указанием кратности длины всех цепочек языка. В конечной цепочке не должно находиться символов, не содержащихся в алфавите. В крайнем случае она может быть и пустой. Кратность длины цепочек задаётся любым натуральным числом. Кратность, равная единице, равносильна отсутствию ограничений на длину цепочек.
Программа должна:
1. по предложенному описанию регулярного языка строить регулярную грамматику, генерирующую этот язык, в том виде, как она рассматривалась в теории, раздел 1.3.1;
2. с помощью построенной грамматики генерировать все цепочки языка в заданном пользователем диапазоне длин.
Грамматика должна строиться и праволинейная, и леволинейная. Желаемый тип грамматики выбирается пользователем в меню. Все правила грамматики должны соответствовать выбранному типу! Отдельно следует указывать, какой нетерминальный символ является целевым. Если в грамматике используется пустое правило, то необходимо дать пояснение, каким именно символом обозначается пустая цепочка.
После построения грамматики пользователь может убедиться в её правильности путём генерации всех цепочек языка в том диапазоне длин, который он задаст. Генерацию каждой цепочки языка следует поэтапно отображать на экране в виде цепочки вывода (в соответствии с примерами раздела 1.4.1.). Генерация осуществляется в соответствии с лабораторной работой No1.
Рассмотрим пример построения регулярной грамматики.
Задан язык: алфавит {a,b,c}, обязательная конечная цепочка ‘aab’, кратность длины 2. Анализируем задание: язык будет состоять из цепочек чётной длины, заканчивающихся на ‘aab’, например {сaab, аaab, bааb, caaааb, сabaab, ...}.
Для примера выберем праволинейную грамматику (ПЛ). В правой части её правил вывода может быть только один нетерминал, и он должен располагаться справа от цепочек терминальных символов. Для соблюдения кратности длины цепочек будет использоваться чередование нетерминалов. Длина кратна двум, следовательно, потребуется два нетерминала: S→aA|bA|cA, А→aS|bS|cS. Выход должен происходить по обязательной конечной цепочке ‘aab’, в силу чётности длины цепочек перед ней должен быть как минимум один символ. Следовательно, эта цепочка должна порождаться нетерминалом А: А→aab.
Итак, построенная грамматика имеет вид:
G({a,b,c},{S,A},P,S), Р: S→aA|bA|cA; А→aS|bS|cS|aab.
Похожие материалы
Современные технологии программирования. Курсовая работа. Вариант №10.
Bodibilder
: 15 июля 2019
Курсовая работа
Спроектировать и реализовать калькулятор для выполнения вычислений над числами заданными в соответствии с вариантом, используя классы Object Pascal и библиотеку визуальных компонентов VCL Delphi для построения интерфейса.
Варианты чисел: простые дроби.
90 руб.
Объектно-ориентированное программирование. Курсовая работа. Вариант №10
Bodibilder
: 2 апреля 2019
Вариант 10
Курсовая работа состоит из одного задания. Вид графического объекта, движение которого надо будет реализовать в работе, выбирается согласно своему варианту (см. далее таблицу вариантов).
Задание:
Написать программу, используя объектно-ориентированный подход, которая двигает по экрану изображение заданного графического объекта.
Допускается: замена некоторых элементов графического объекта, изменение его цветовой гаммы.
Реализовать два вида движения: случайное и по нажатию на клавиши со
140 руб.
Программирование (часть 2-я). Курсовая работа. Вариант №10
Bodibilder
: 19 марта 2019
Задание: разработать программу для создания и работы с двусвязным списком , состоящим из структур. Для работы со списком создать меню со следующими пунктами:
1. Создание списка.
2. Просмотр списка.
3. Добавление в список новой записи.
4. Поиск и корректировка записи в списке.
5. Удаление записи из списка.
6. Сохранение списка в файле.
7. Загрузка списка из файла.
8. Выход.
3.1. Варианты задания
10. Структура содержит название издания, тип издания (газета или журнал), цена экземпляра. Изменят
150 руб.
Объектно-ориентированное программирование. Курсовая работа. Вариант №10
CaptainMorgan228
: 8 февраля 2018
Курсовая работа состоит из одного задания. Вид графического объекта, движение которого надо будет реализовать в работе, выбирается согласно своему варианту (см. далее таблицу вариантов).
Задание:
Написать программу, используя объектно-ориентированный подход, которая двигает по экрану изображение заданного графического объекта.
Допускается: замена некоторых элементов графического объекта, изменение его цветовой гаммы.
Реализовать два вида движения: случайное и по нажатию на клавиши со стрел
90 руб.
Объектно-ориентированное программирование. Курсовая работа. Вариант: №10.
Cole82
: 6 июня 2015
Курсовая работа состоит из одного задания. Вид графического объекта, движение которого надо будет реализовать в работе, выбирается согласно своему варианту (см. далее таблицу вариантов).
Задание: Написать программу, используя объектно-ориентированный подход, которая двигает по экрану изображение заданного графического объекта.
Допускается: замена некоторых элементов графического объекта, изменение его цветовой гаммы.
Реализовать два вида движения: случайное и по нажатию на клавиши со стрелк
21 руб.
Курсовая работа. Программирование на языках высокого уровня. Вариант №10
Petr1
: 18 января 2018
Задание: разработать программу для создания и работы с двусвязным списком , состоящим из структур. Для работы со списком создать меню со следующими пунктами:
1. Создание списка.
2. Просмотр списка.
3. Добавление в список новой записи.
4. Поиск и корректировка записи в списке.
5. Удаление записи из списка.
6. Сохранение списка в файле.
7. Загрузка списка из файла.
8. Выход.
10. Структура содержит название издания, тип издания (газета или журнал), цена экземпляра. Изменять цену экземпляра зада
500 руб.
Курсовая работа по дисциплине: Основы системного программирования. Вариант № 10
Jack
: 6 июня 2013
Задание 1
1. Создать командный файл, который выполняет следующие действия:
a. Очистка экрана
b. Создание директории C:\TEMP
c. Создание нового файла NEW.TXT с консоли в директории C:\TEMP.
d. Создание копий файлов *.TXT, сменив расширение на bat и оставив имя.
e. Сравнение копий с оригиналами.
f. Просмотр постранично содержимого директории C:\TEMP.
g. Удаление всех файлов с расширением TXT с запросом подтверждения из текущей директории.
Задание 2
0. Написать и отладить программу
300 руб.
Курсовая работа по дисциплине: Современные технологии программирования. Вариант 10 (магистратура)
Roma967
: 11 июля 2019
Тема работы:
Проектирование и реализация программ в технологии «абстрактных типов данных» и объектно-ориентированного программирования.
Цель работы:
Сформировать практические навыки:
• проектирования программ в технологии «абстрактных типов данных» и «объектно-ориентированного программирования» и построения диаграмм UML;
• реализации абстрактных типов данных с помощью классов C#;
• использования библиотеки визуальных компонентов VCL для построения интерфейса,
• тестирования программ.
Задание
С
1000 руб.
Другие работы
Плашки инжектора колонны гибких труб колтюбинговой установки МК20Т-Чертеж-Оборудование для капитального ремонта, обработки пласта, бурения и цементирования нефтяных и газовых скважин-Курсовая работа-Дипломная работа
lesha.nakonechnyy.92@mail.ru
: 17 мая 2018
Плашки инжектора колонны гибких труб колтюбинговой установки МК20Т-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Чертеж-Оборудование для капитального ремонта, обработки пласта, бурения и цементирования нефтяных и газовых скважин-Курсовая работа-Дипломная работа
460 руб.
Расчет статической системы стабилизации напряжения генератора
evelin
: 20 ноября 2015
Краткое описание работы
Разбиение системы на элементы
Построение структурной схемы САУ
Передаточные функции системы
Проверка системы на устойчивость
D-разбиение
Реализация структурной схемы САУ в программе SamSim
245 руб.
Проектирование агрегатного отделения АТП на 242 для автомобилей МАЗ-105
Aronitue9
: 30 декабря 2011
Эффективность использования автотранспортных средств зависит от совершенства организации транспортного процесса и свойств автомобилей сохранять в определенных пределах значения параметров, характеризующих их способность выполнять требуемые функции. В процессе эксплуатации автомобиля его функциональные свойства постепенно ухудшаются вследствие изнашивания, коррозии, повреждения деталей, усталости материала, из которого они изготовлены и др. В автомобиле появляются различные неисправности, которые
42 руб.
Технологии программированния. Лабораторные работы №№1-5
danila1271
: 8 января 2018
Задание
1. Реализовать абстрактный тип данных «комплексное число», используя класс
• Object Pascal,
• С++,
в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Задание
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «память для комплексных чисел», используя класс
• Object Pascal,
• С++.
2. Протестировать каждую операцию, определенную на типе данных одним из методо
200 руб.