Este projeto consiste em um trabalho prático da disciplina Linguagens Formais e Autômatos, ministrada pelo professor Ricardo Terra. O objetivo é criar um programa que lê uma Gramática Livre de Contexto (GLC) e a transforma na Forma Normal de Chomsky (FNC).
Os participantes do projeto são:
- Mateus Mendes da Silva
- Matheus Piassi de Carvalho
- Bernardo Coelho Pavani Marinho
O programa converte uma GLC em FNC seguindo os passos aprendidos no curso. Ele executa algoritmos para remoção de recursão inicial, tratamento de variáveis "nullable", eliminação de cadeias, e outras transformações necessárias para a FNC.
Clone o repositório:
git clone https://github.com/MatheusPiassiC/TrabLFA
cd TrabLFA- Compilador C++ (recomendado: g++ versão 7.5 ou superior)
No terminal, use o seguinte comando para compilar o código:
g++ -o fnc main.cppE após compilado, para executar é necessário inserir:
./fnc "ArquivoGramatica.txt"– Variáveis: [A-Z] (as variáveis criadas pelo seu algoritmo podem ser T1, T2, T3, etc.)
– Terminais: [a-z]
– Operador de definição: ->
– Separador de regras: |
– Lambda: .
S -> Sa | bA
A -> Ab | Bc
B -> Aa | .
https://github.com/BernardoPavani