Advertisement
Guest User

Untitled

a guest
Oct 9th, 2015
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.91 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. #define MAX 100
  4.  
  5. typedef struct pilha{
  6.     int dado[MAX];
  7.     int topo;
  8. } stack;
  9.  
  10. void makestck(stack *p){
  11.     p->topo = -1;
  12.     return;
  13. }
  14.  
  15. int isempty(stack *p){
  16.     return p->topo == -1;
  17. }
  18.  
  19. int isfull(stack *p){
  20.     return p->topo == MAX - 1;
  21. }
  22.  
  23.  
  24. void insert(int x, stack *p){
  25.     if(isfull(p)) printf("Pilha Cheia\n");
  26.     else
  27.     {
  28.         p->topo++;
  29.         p->dado[p->topo] = x;
  30.     }
  31.  
  32. }
  33.  
  34. int removi(stack *p)
  35. {
  36.     if(!isempty(p))
  37.     {
  38.         return p->dado[p->topo--];
  39.     }
  40.     else return -1;
  41. }
  42.  
  43. int main()
  44. {
  45.  
  46.  
  47.     stack k, q;
  48.     makestck(&k);
  49.     makestck(&q);
  50.     printf("Entre com o numero de elementos: ");
  51.     int number;
  52.     scanf("%d", &number);
  53.     int i, aux;
  54.     for(i = number; i > 0; --i)
  55.     {
  56.         insert(i, &k);
  57.     }
  58.     while(!isempty(&k))
  59.     {
  60.         insert(removi(&k), &q);
  61.     }
  62.     while(!isempty(&q))
  63.     {
  64.         printf("%d ", removi(&q));
  65.     }
  66.  
  67.  
  68.     return 0;
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement