Advertisement
Guest User

Untitled

a guest
Mar 30th, 2020
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. using System;
  2.  
  3. namespace Stack
  4. {
  5. class Program
  6. {
  7. class Stack
  8. {
  9. int[] tab;
  10. int apex = 0;
  11.  
  12. public void Init(int size)
  13. {
  14. tab = new int[size];
  15. apex = -1;
  16. }
  17.  
  18. public void Destroy()
  19. {
  20. tab = null;
  21. }
  22.  
  23. public void Push(int x)
  24. {
  25. tab[++apex] = x;
  26. }
  27.  
  28. public void Pop()
  29. {
  30. if (apex >= 0)
  31. --apex;
  32. else
  33. Console.WriteLine("Brak elementów na stosie!");
  34. }
  35.  
  36.  
  37. public int Top()
  38. {
  39. return tab[apex];
  40. }
  41.  
  42. public bool isEmpty()
  43. {
  44. return apex == -1;
  45. }
  46.  
  47. public bool isFull()
  48. {
  49. return apex == tab.Length - 1;
  50. }
  51.  
  52. }
  53.  
  54. static int Main()
  55. {
  56. int size;
  57. Stack stack = new Stack();
  58. Console.Write("Wczytaj rozmiar stosu: ");
  59. size = int.Parse(Console.ReadLine());
  60. if (size > 100)
  61. {
  62. Console.WriteLine("Za duży rozmiar stosu!");
  63. return 0;
  64. }
  65. stack.Init(size);
  66.  
  67. Console.WriteLine("Wczytaj {0} liczb które mają być wrzucone na stos", size);
  68. for (int i = 0; i < size; i++)
  69. stack.Push(int.Parse(Console.ReadLine()));
  70.  
  71. Stack temporary = new Stack();
  72. temporary.Init(size);
  73.  
  74. Console.WriteLine("");
  75. Console.Write("Liczby które znajdują się na stosie\n");
  76. while (!stack.isEmpty())
  77. {
  78. Console.Write("{0}\n", stack.Top());
  79. temporary.Push(stack.Top());
  80. stack.Pop();
  81. }
  82.  
  83. while (!stack.isFull())
  84. {
  85. stack.Push(temporary.Top());
  86. temporary.Pop();
  87. }
  88.  
  89. Console.WriteLine("");
  90. stack.Destroy();
  91.  
  92. return 0;
  93.  
  94. }
  95.  
  96. }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement