Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Montroz
1 / 1 / 1
Регистрация: 18.03.2013
Сообщений: 10
#1

Сответстивие текста грамматике - C++

16.12.2013, 21:43. Просмотров 141. Ответов 0
Метки нет (Все метки)

Есть грамматика в форме БНФ.
Код
1	grammar 		notion [grammar]
2	notion			differenciation name integration [sentences] 
3	differenciation	        '(' [notions] ')' 
4	integration		'(' [notions] ')' 
5	notions			notion [notions]

6	sentences		[aspect] sentence [sentences]
7	sentence		syntax semantic 
8	syntax			item [syntax]
9	item			[aspect] notion [alias]
					sounds [alias]
10	semantic		'{' [text] '}' 
11	sounds			''' [phonetics] '''
12	alias 			'`' name '`'
13	text			terminals [text]
14	terminals 		letter | digit | signs
16	aspect			name 
17	name			letter [name] 
					name digit
18	letter			'A' | 'B' | 'C' | ... 
					'a' | 'b' | 'c' | ... 
					'А' | 'Б' | 'В' | ... 
					'а' | 'б' | 'в' | ...
					'_'
19	digit			'0' | '1' | ... | '9'
20	signs			' ' | '~' | ... | '.'
21	phonetics		phonetic [phonetics]
22	phonetic		vowel | consonant
23	vowel			'А' | 'Э' | 'И' | 'О' | 'У' | 'Ы' | ' '
24	consonant		'п' | 'п*' | 'б' | 'б*' | 'м' | 'м*' | 'ф' | 'ф*' 
					'в' | 'в*' | 'т' | 'т*' | 'д' | 'д*' | 'н' | 'н*' 
					'с' | 'с*' | 'з' | 'з*' | 'р' | 'р*' | 'л' | 'л*' 
					'к' | 'к*' | 'г' | 'г*' | 'х' | 'х*' 
					'ш' 'ж' | 'щ' 'җ' | 'ц' | 'ч' | 'й'
Нужно написать программу, которая сканирует входной текст и говорит, соответсвует ли текст этой грамматике или нет.

В какую сторону копать? Как я понял, это относится к синтансическому и семантическому анализатору (или данная задача называется как-то по другому?). Что прочитать? Дайте отправные точки для дальнейшего поиска, т.е. в интеренете слишком много инфы по этому поводу, сложно разобраться.
Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2013, 21:43     Сответстивие текста грамматике
Посмотрите здесь:

Алгоритм парсера по грамматике - C++
Здравствуйте! Нашел в интернете код грамматики для ini файла inidata = spaces, {section} . section = "", stringSpaces, "\n",...

Удаление недостижимых символов в КС грамматике - C++
На вход подается описание контестно-свободной грамматики, состоящая из левой и правой частей. Это строки, состоящие из цифр, строчных и...

Перейти к R-грамматике - Теория автоматов
Доброго времени суток. Есть БНФ грамматика, как перейти к R-грамматике: <программа> ::= PROGRAMM <идентификатор> <декларированная...

Учебник по грамматике англ - Иностранные языки
Здравствуйте, посоветуйте какой-нибудь учебник по англ. чтобы подтянуть грамматику, когда-то давно изучал, но уже подзабыл все....

Spirit::qi - не обновляются данные в грамматике - Boost C++
Есть такой код простой грамматики, которая парсит данные в std::map<std::string, int>. При добавлении того же самого ключа в мапу значение...

Вывод слов по заданной КС-грамматике - Lisp
Добрый день! Помогите с лабораторной. Дана контекстно-свободная грамматика G=(VN,VT,P,S). Необходимо сгенерировать все слова, которые...

Проверка принадлежности цепочки грамматике. - Pascal
Нужно составить программу, которая проверяет принадлежность цепочки заданной грамматике. Грамматика Z:=U0|V1; U:=Z1|1; V:=Z0|0. ...

Определить пуст ли язык в заданной грамматике - C#
задача Определить пуст ли язык в заданной грамматике..мне выдает кучу ошибок...вот алгоритм:Шаг 1. Начать коллекцию с единственного дерева,...

На тему контестно-свободных грамматик. Добавить правило к грамматике HTML - Теория автоматов
Задача на такова: "Добавьте к грамматике HTML следующее правило: элемент списка может быть упорядоченным списком, заключённым в парные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru