/Formais

Primary LanguageJavaScriptMIT LicenseMIT

Instituição: Universidade Federal de Santa Catarina. Departamento: Departamento de Informática e Estatística (INE). Integrantes: João Pedro Santana, Stefano Bergamini Poletto. Data: 05/05/2018.

##O programa foi feito utilizando da linguagem JavaScript, já que um dos integrantes possuia maior conhecimento com essa linguagem, REACT e uma biblioteca para utilização ##de pop-ups chamada SweetAlert. Com isso foi criado um site utilizando do dominio do GitHub (https://joaopedsa.github.io/Formais/) com o intuito de facilitar a utilização ##desta ferramenta, já que não é necessário o download de programas externos nem pacotes e/ou bibliotecas.

##O programa apresenta uma usabilidade simples, de facil entendimento e extremamente intuitiva. Com a ajuda dos pop-ups a criação das tabelas ficou prática, escolhendo ##quantos estados e entradas o Automato vai ter e auxiliando também na mudança dos valores das entradas do Automato.
##O programa é separado em três partes principais indicadas pelos seus respectivos botões, Automato Finito, Gramatica Regular e Expressão Regular, localizados no topo da ##página. 
##Cada parte possui seus botões auxiliares todos com sua função, na parte de Automatos os botões são: Determinize, Criar Tabela de Transição, Importar, Exportar e ##Transformar para GR, o primeiro determiniza o automato feito na tabela presente no meio da pagina, já o segundo é onde se escolhe quantos estados e entradas essa tabela ##vai ter, o Importar e Exportar servem para salvar a tabela em um .json e para ler uma tabela em .json, respectivamente, e o ultimo transforma o automato descrito na ##tabela em uma Gramatica Regular, indo para a parte de Gramatica Regular.
##A parte de Gramatica Regular apresenta três botões auxiliares, Transformar para Automato Finito, Exportar e Importar. Exportar e Importar possuem o mesmo funcionamento ##dos presentes na parte de Automatos, porem dessa vez se salva e lê somente arquivos de Gramaticas Regulares em .json. O botão "Transformar para Automato Finito" pega a ##Gramatica descrita na página e a transforma em Automato Finito, voltando para a parte de Automatos.
##A parte de Expressão Regular possui dos botões Exportar e Importar com a mesma funcionalidades ja descritas porém para Expressões Regulares.

##O código utiliza de arrays e strings para realizar a lógica necessária para realizar as tarefas pedidas.

##Para a utilização da Aplicação sem a utilização do site https://joaopedsa.github.io/Formais/ você pode acessar entrando no terminal na pasta da aplicação