Escolar Documentos
Profissional Documentos
Cultura Documentos
apropriada de erro.
2. Com as mesmas declaraes de (1), imagine que resolvemos separar as duas
funes da funo pop, usando duas funes,
int top(void);
void pop1(void);
ficando para top a funo de dizer qual o elemento do topo da pilha, e para pop1 a
funo de retirar este elemento, sem devolver nenhum resultado. (Este arranjo seria
usado quando queremos ver o elemento do topo antes de resolver retir-lo de l.)
Escreva as funes top e pop1.
3. Adapte as funes de (1) e de (2) para o caso em que o tipo PILHA declarado por
#define MAX 100
struct pilha {
int vet[MAX], num;
};
typedef struct pilha PILHA;
4. Redefina as operaes do tipo PILHA, ou seja, init, push, pop, vazia e show
quando o tipo PILHA declarado por
#define MAX 100
struct pilha {
int vet[MAX], num;
};
typedef struct pilha *PILHA;
(Note que neste caso, o tipo PILHA j definido como o endereo da estrutura que
da pilha so caracteres.
6. Idem, supondo que vamos usar operaes top e pop1 em vez de pop, como em
(2).
7. Idem, para uma pilha de elementos do tipo struct info * , sendo o tipo
struct info declarado por
struct info {
char nome[80];
int matricula;
};
0 1 2 3 4 5 6 7 8 9 + - * / C E
onde C representa clear, e E representa enter, que usada indicar que vai ser
]
0 ]
9 ]
90 ]
90 0 ]
90 2]
90 20 ]
90 20 0 ]
90 20 1 ]
90 20 15 ]
90 20 15 0 ]
90 20 15 1 ]
90 20 15 13 ]
90 20 2 ]
90 40 ]
90 40 0 ]
90 40 5 ]
90 45 ]
2 ]
struct no {
char elem;
PT prox;
};
typedef PT PILHA;
para representar uma pilha de caracteres atravs de uma lista encadeada. Escreva uma
funo com prottipo
int conta(PILHA p);
Referncias: Prof J.
L. Rangel