Buscar

Alguém para me ajudar a resolver esse exercício de Estrutura de Dados ??

Faça um programa que leia caracteres (um a um) e verifique se a sequência de caracteres digitados forma uma pelíndrome.

use na solução tres pilhas para guardar os valores digitados.

 

Quem puder me ajudar , Desde já agradeço .

💡 10 Respostas

User badge image

Joao Andre MArtins Dias

int main(){

Pilha *p1,*p2,*p3;

char lido,aux,flag=1;

init(&p1);

init(&p2);

init(&p3);

do{

printf("digite uma palavra e <.> p/ testar Palindromo:");

fflush(stdin);

lido=getch();//scanf("%c",&lindo); aqui é da sua escolha

push(&p1,lido);

push(&p2,lido);

}while(lido!='.');

while(!isEmpty(p1)){

pop(&p1,&lido);

push(&p3,lido);

}

while(!isEmpty(p2)){

pop(&p2,&lido);

push(&p3,aux);

if(aux!=lido)

flag=0;

}

(flag)?printf("\nE um palindromo"):printf("\nNao e um palindromo");

 

}

Cara não vai ganhar nenhum premio por isso mas acho que resolve, se precisar do tad da pilha tem nos meus arquivos, pode me adicionar se quiser dar uma olhada na lista. Mas é uma pilha dinâmica(com alocação dinâmica de memoria e ponteiros) mas a logica é a mesma, le o caracter digitado e o insere nas pilhas 1 e 2 até que o usuário digite ponto"." ai retiro todos os elementos da pilha um para a pilha 3, depois é so retirar os elementos da pilha 2 e 2 e ir comparando um a um se todos forem iguais, é um palindromo.

Se sua pilha é so um vetor ou oum tad opu ou tad com lista dinãmica a logiaca é sempre a mesma, pilha é pilha.

espero que ajude.

1
Dislike0
User badge image

Joao Andre MArtins Dias

Em que linguagem vocês desenvolvem esses exercicios?

 

1
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais