ArinaRaguzina

Untitled

Nov 13th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. program stack;
  2.  
  3. uses
  4. RecordStruct;
  5.  
  6. var
  7. a: parraystack;
  8. a2:pArrayQueue;
  9. ls:PListStack;
  10. lq:PListQueue;
  11. u: pliststack;
  12. b: boolean;
  13. i,number,x,y:integer;
  14. begin
  15. Assign(input, 'input.txt');
  16. Assign(output, 'output.txt');
  17. reset(input);
  18. rewrite(output);
  19.  
  20. writeln('ArrayStack'); {23,4,5,67,8}
  21. a := newarraystack(5); //stack array
  22. for i := 0 to 4 do
  23. begin
  24. readln(number);
  25. pushdata(a, number);
  26. end;
  27. while getsize(a) > 0 do
  28. begin
  29. writeln(getsize(a), ' ', getdata(a));
  30. popdata(a);
  31. end;
  32. delstack(a);
  33.  
  34. writeln('ArrayQueue'); {23,4,5,67,8}
  35. a2 := newArrayQueue(5);
  36. for i := 0 to 4 do
  37. begin
  38. readln(number);
  39. pushdata(a2, number);
  40. end;
  41. while getsize(a2) > 0 do
  42. begin
  43. writeln(getsize(a2), ' ', getdata(a2));
  44. popdata(a2);
  45. end;
  46.  
  47.  
  48.  
  49. u := newListStack();
  50. b := pushData(u, 6);
  51. b := pushData(u, 7);
  52. b := pushData(u, 8);
  53. Write(getdata(u));
  54. b := popdata(u);
  55. Write(getdata(u));
  56. b := popdata(u);
  57. Write(getdata(u));
  58. b := popdata(u);
  59.  
  60. writeln;
  61. writeln;
  62.  
  63. writeln('ListStack');
  64. ls:=newliststack();
  65. pushdata(ls,5);
  66. pushdata(ls,25);
  67. pushdata(ls,125);
  68. pushdata(ls,625);
  69. pushdata(ls,3125);
  70. pushdata(ls,2);
  71. pushdata(ls,8);
  72. pushdata(ls,32);
  73.  
  74. writeln(ls^.size);
  75. while(getsize(ls) > 0) do
  76. begin
  77. x:=getdata(ls);
  78. y:=getsize(ls);
  79. writeln(x,' <----> ',y);
  80. popdata(ls);
  81. end;
  82.  
  83. delstack(ls);
  84. writeln;
  85. writeln;
  86.  
  87.  
  88. writeln('ListQueue');
  89. lq:=newlistqueue();
  90. pushdata(lq,3);
  91. pushdata(lq,9);
  92. pushdata(lq,27);
  93. pushdata(lq,81);
  94. pushdata(lq,243);
  95. pushdata(lq,729);
  96. writeln(lq^.size);
  97. while (getsize(lq)>0) do
  98. begin
  99. x:=getdata(lq);
  100. y:=getsize(lq);
  101. writeln(x,' <----> ',y);
  102. popdata(lq);
  103. end;
  104.  
  105. delqueue(lq);
  106.  
  107. { writeln;
  108. a := newarraystack(4);
  109. pushdata(a, 1);
  110. pushdata(a, 23);
  111. pushdatA(a, 345);
  112. while getsize(a) > 0 do
  113. begin
  114. writeln(getsize(a), ' ', getdata(a));
  115. popdata(a);
  116. end;}
  117. close(input);
  118. close(output);
Advertisement
Add Comment
Please, Sign In to add comment