please, alguem pode me ajudar. estou cursando segunda fase computação e tenho um trabalho sobre pilhas que nao estou conseguindo resolver, tenho que criar um programa que avalie uma expressão (9+6) = certa ,{9+2(3-1)}=certa, (9-2 = errada,
ou seja avaliar se o numero de colchetes, partenteses e chaves estao corretos, empilhá-los e comparar isso.
se alguem puder help me ficarei grato, é urgente.
Pilhas em java
M
6 Respostas
P
Em qual parte você teve problemas?
M
não estou conseguindo fazer as comparações dos parenteses etc, faço antes de empilhar ou desempilho primeiro? e como faço a comparação?
P
Qual seu algoritmo?
1 - Empilhe todas as vezes que encontrar um “(”
2 - Desempilhe todas as vezes que encotnrar um “)”
Se sobrar algo na pilha ou você desempilhar a main (underflow), tem erro na expressão.
M
while(true){
try{
String expressao = JOptionPane.showInputDialog(null, “”, “Dígite a expressão a ser analisada .”, 1);
for (int i =1; i>=expressao.length(expressao);i++){
if (expressao[i] == ‘(’ ) ;//aqui oerro
Pilhas pilha = new Pilhas( expressao.length() );
o compilador nao esta identificando o parentese da expressao, ou seja ele pega o do meio que é o para fazer a comparação e fecha com o último, indiferente se ele esta entre " " ou ’ ’ .
P
if (expressao[i] == ‘(’ );//aqui oerro
…
o compilador nao esta identificando o parentese da expressao, ou seja ele pega o do meio que é o para fazer a comparação e fecha com o último, indiferente se ele esta entre " " ou ’ ’ .
Na verdade não. Strings em java não são arrays de caracteres, são objetos, essa comapração é inválida.
Use o método de String que retorna um array de caracteres.
M
e qual seria esse método???
Criado 3 de abril de 2005
Ultima resposta 4 de abr. de 2005
Respostas 6
Participantes 2
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Inteligencia Artificial e ChatGPT: Da revolucao dos... Por Fabricio Carraro — Casa do Codigo