Advertisement
NB52053

Nadui_Lab6

Nov 27th, 2016
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.94 KB | None | 0 0
  1. // Header File Part  STACK.h
  2.  
  3. #ifndef stack_h_
  4. #define stack_h_
  5.  
  6. void push (int item);
  7. void pop();
  8. void isFULL();
  9. void isEmpty();
  10. int getTop();
  11.  
  12. #endif //
  13.  
  14.  
  15.  
  16.  
  17.  
  18. //STACK APPLICATION
  19.  
  20. #include <stdio.h>
  21. #include <stdlib.h>
  22. #include "stack.h"
  23.  
  24. void main (){
  25.  
  26.     int value, choice, topvalue;
  27.  
  28.     while(1){
  29.         printf("------MENU------\n");
  30.         printf("(1) Push\n");
  31.         printf("(2) Pop\n");
  32.         printf("(3) Is Full\n");
  33.         printf("(4) Is Empty\n");
  34.         printf("(5) Get top\n");
  35.         printf("(6) Exit\n");
  36.         printf(" Enter your choice \n");
  37.         scanf("%d", &choice);
  38.  
  39.         switch(choice) {
  40.        
  41.             case 1:
  42.                 printf("Enter an number: ");
  43.                 scanf("%d", &value);
  44.                 push(value);
  45.                 printf("Value pushed\n");
  46.                 break;
  47.             case 2:
  48.                 pop();
  49.                 printf("Value poped\n");
  50.                 break;
  51.  
  52.             case 3:
  53.                 isFULL();
  54.                 break;
  55.  
  56.             case 4:
  57.                 isEmpty();
  58.                 break;
  59.  
  60.             case 5:
  61.                 topvalue = getTop();
  62.                 printf("The top element is: %d\n", topvalue );
  63.                 break;
  64.                
  65.             case 6:
  66.                 exit(0);
  67.  
  68.             default:
  69.                  printf("Wrong input\n");
  70.         }
  71.  
  72.     }
  73.  
  74. }
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83. // Stack Implementation
  84.  
  85. #include <stdio.h>
  86. #include "stack.h"
  87.  
  88. const int maxItem = 5;
  89. int top = -1;
  90. int items[maxItem];
  91. int item;
  92.  
  93. void push (int item){
  94.     if (top + 1 > maxItem){
  95.    
  96.     printf("Stack Overflow\n");
  97.     }
  98.     else {
  99.        
  100.         items[top+1] = item;
  101.         top = top +1;
  102.         //top = top++;
  103.     }
  104. }
  105.  
  106.     void pop (){
  107.         if (top==-1){
  108.             printf("Stack underflow\n");
  109.         }
  110.         else {
  111.    
  112.             item = items[top];
  113.             printf("Value is : %d\n", item);
  114.             items[top] = 0;
  115.             top = top -1;
  116.         }
  117.  
  118.     }
  119.  
  120.  
  121.     void isFULL(){
  122.        
  123.         if (top + 1 == maxItem){
  124.             printf("Stack is full\n");
  125.         }
  126.         else {
  127.             printf("Stack is full\n");
  128.         }
  129.     }
  130.  
  131.     void isEmpty(){
  132.    
  133.         if (top == -1 ){
  134.             printf("Stack Empty\n");
  135.         }
  136.         else {
  137.             printf("Stack not empty\n");
  138.         }  
  139.     }
  140.  
  141.  
  142.     int getTop(){
  143.         if (top != -1){
  144.             return items[top];
  145.         }
  146.         else{
  147.             return -1; 
  148.         }
  149.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement