Este repositório contém um projeto Java projetado para manipular e avaliar expressões aritméticas usando a estrutura de dados do Tipo Abstrato de Dados (TAD) Pilha. Baseando-se nos métodos ideados por Jan Łukasiewicz, o aplicativo habilita a conversão de expressões matemáticas na notação infixa para a notação polonesa reversa (RPN), também chamada de notação posfixa, eliminando a necessidade de priorizar operadores ou usar parênteses.
O aplicativo apresenta um conjunto de ferramentas interativas que permitem:
- Leitura de expressões matemáticas na forma de notação infixa com variáveis de uma única letra.
- Atribuição dos valores numéricos para cada variável na expressão.
- Conversão automática da expressão para notação polonesa reversa.
- Avaliação da expressão convertida e apresentação do resultado.
- Verificação da validade da expressão matemática quanto aos operadores utilizados e formatação de parênteses.
Para facilitar o uso do sistema, um menu com várias opções é disponibilizado, incluindo:
- Entrada da expressão aritmética na notação infixa.
- Configuração dos valores numéricos para as variáveis.
- Conversão da expressão para a notação posfixa e sua exibição.
- Avaliação da expressão e exibição do resultado.
- Opção para finalizar o programa.
Este software é uma implementação em Java que não utiliza estruturas de dados pré-existentes como a classe Stack do Java. Ao invés disso, baseia-se em uma implementação customizada do TAD Pilha, seguindo os conceitos aprendidos e praticados em aula.
- Gustavo Nascimento Siqueira
- Felipe Ujvari Gasparino de Sousa
- https://www.devmedia.com.br/usando-generics-em-java/28981
- https://www.geeksforgeeks.org/check-for-balanced-parentheses-in-an-expression/
Complementando a documentação escrita, um vídeo detalhado (3-5 minutos) é providenciado para ilustrar o processo de conversão infixa para RPN e a eventual avaliação da expressão. O vídeo inclui:
- Identificação dos membros do grupo.
- Uma demonstração passo a passo usando o aplicativo desenvolvido.
- Emprego de recursos visuais para facilitar a compreensão.
O link para o vídeo estará disponível na descrição do repositório.