Advertisement
Guest User

Untitled

a guest
Aug 26th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. #ifndef __QUEUE__
  2. #define __QUEUE__
  3.  
  4. #include <iostream>
  5. #include <stdlib.h>
  6. #include <fstream>
  7. #define K 12
  8. using namespace std;
  9.  
  10. typedef struct Tdato {
  11. int x;
  12. int y;
  13. int z;
  14.  
  15. Tdato(){
  16. x = 0;
  17. y = 0;
  18. z = 0;
  19. }
  20.  
  21. Tdato(int _x, int _y, int _z) {
  22. x = _x;
  23. y = _y;
  24. z = _z;
  25. }
  26.  
  27. void stampa() {
  28. cout << "[" << x << "," << y << "," << z << "]";
  29. }
  30. } Tdato;
  31.  
  32. typedef struct Tstack {
  33. int n; // Number of elemetns inside
  34. int dim; // Max size
  35. Tdato *dato;
  36.  
  37. // Default constructor: size = 5
  38. Tstack() {
  39. n = 0;
  40. dim = 5;
  41. dato = new Tdato[dim];
  42. }
  43.  
  44. Tstack(int _dim) {
  45. n = 0;
  46. dim = _dim;
  47. dato = new Tdato[dim];
  48. }
  49.  
  50. ~Tstack() {
  51. delete []dato;
  52. }
  53.  
  54. void print(){
  55. if(n == 0){
  56. cout << "Stack is empty";
  57. } else {
  58. int tempSize = n; // Copy of the temp size
  59. int i = 0;
  60. do {
  61. cout << "[" << i << "] = ";
  62. dato[i].stampa();
  63. cout << endl;
  64. --tempSize;
  65. ++i;
  66. } while(tempSize != 0);
  67. }
  68. }
  69.  
  70. bool isFull() {
  71. return n == dim;
  72. }
  73.  
  74. bool isEmpty() {
  75. return n == 0;
  76. }
  77.  
  78. void push(Tdato d) {
  79. if(isFull()) {
  80. cout << "Stack is full";
  81. } else {
  82. dato[n] = d;
  83. ++n;
  84. }
  85. }
  86.  
  87. Tdato pop() {
  88. if(isEmpty()) {
  89. cout << "Stack is empty";
  90. return Tdato();
  91. } else {
  92. --n;
  93. return dato[n];
  94. }
  95. }
  96. } Tstack;
  97.  
  98. typedef Tstack Stack;
  99. typedef Tstack *StackPointer;
  100.  
  101. void push(StackPointer, Tdato);
  102. Tdato pop(StackPointer);
  103. Tdato datoRandom();
  104. int random(int, int);
  105. void printArray(StackPointer [], int);
  106.  
  107. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement