staketd / FL_pract_2

Second practicum

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Алгортим Эрли

Сет-ап и запуск

Для установки проекта нужно исполнить команду из корня репозитория

cmake CMakeLists.txt && make

Для запуска основной программы нужно исполнить команду

./pract_2

Для запуска тестов нужно исполнить команду

./bin/unit_tests

Тесты находятся в файле

testing/tests/main.cpp

Протестированы грамматики: ПСП, палиндромы, арифметические выражения.

Формат ввода грамматики и слова для проверки

В первой строке задается n - количество правил и начальный символ

В следующих n строках идут правила в виде leftSide rightSide, где в leftSide находится 1 символ - нетерминал. В rightSide находится правая часть правила.

В последней строке вводится слово для проверки

Пример

5 S
S C
D aDb
S SC
C cD
D _
cccccaaaabbbb

Символ '_' - эпсилон

Формат вывода

В единственной строке выводится слово YES, если слово принадлежит грамматике иначе NO.

About

Second practicum


Languages

Language:C++ 74.6%Language:CMake 25.4%