TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Pilha Palindromo

Artigos Científicos: Pilha Palindromo. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  14/11/2014  •  368 Palavras (2 Páginas)  •  1.170 Visualizações

Página 1 de 2

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <string.h>

#define tam 10

//hgs pilha aula7 palindromo

typedef struct

{

int topo;

char el[tam];

} pilha;

void inicia(pilha *p)

{

p->topo=-1;

}

int cheia (pilha *p)

{

return (p->topo==tam-1);

}

int vazia(pilha *p)

{

return (p->topo==-1);

}

int push (pilha *p, char val)

{

if (cheia(p))

return 0; // pilha cheia

p->el[++p->topo]=val;

return 1;

}

int pop (pilha *p, char *val)

{

if (vazia(p))

return 0; // pilha vazia

*val=p->el[p->topo--];

return 1;

}

void imprime(pilha p)

{

int i;

for(i=p.topo; i>=0; i--)

printf("[ %d ]\n",p.el[i]);

}

main()

{

pilha s;

char palavra[tam], inv[tam];

int i;

puts("Digite uma palavra: ");

fflush(stdin);

gets(palavra);

inicia(&s);

for(i=0; i<strlen(palavra); i++)

push(&s,palavra[i]);

i=0;

while(!vazia(&s))

{

pop(&s,&inv[i]);

i++;

}

inv[i]='\0'; //terminador de string -> \0

if(strcmp(palavra,inv)==0)

printf("\nPalindromos: %s == %s\n",palavra,inv);

else

printf("\nNao sao Palindromos: %s != %s\n",palavra,inv);

getch();

}

...

Baixar como  txt (1.4 Kb)  
Continuar por mais 1 página »