Akaleaf

Gay Full In

Nov 14th, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.45 KB | None | 0 0
  1. program StackList;
  2.  
  3. uses
  4. crt;
  5.  
  6. type
  7.   TpStackElement = ^TStackElement;
  8.   TStackElement = record
  9.     info : integer;
  10.     previous : TpStackElement;
  11.   end;
  12.  
  13. var
  14.   pStackPointer : TpStackElement;
  15.   pTemp : ^TStackElement;
  16.   answer : char;
  17.   element : integer;
  18.  
  19. procedure push(pushMethodElement : integer);
  20. begin
  21.   new(pTemp);
  22.   pTemp^.info := pushMethodElement;
  23.   pTemp^.previous := pStackPointer;
  24.   pStackPointer := pTemp;
  25. end;
  26.  
  27. procedure pop();
  28. var
  29.   pTemp : TpStackElement;
  30. begin
  31.   if (pTemp <> nil) then
  32.   begin
  33.     pTemp := pStackPointer;
  34.     pStackPointer := pStackPointer^.previous;
  35.     dispose(pTemp);
  36.   end;
  37. end;
  38.  
  39. procedure output();
  40. var
  41.   pTemp : TpStackElement;
  42. begin
  43.   pTemp := pStackPointer;
  44.   while (pTemp <> nil) do
  45.   begin
  46.     write(pTemp^.info, ' ');
  47.     pTemp := pTemp^.previous;
  48.   end;
  49. end;
  50.  
  51. begin
  52.   pStackPointer := nil;
  53.  
  54.   repeat
  55.     writeln('1. Add element');
  56.     writeln('2. Remove element');
  57.     writeln('3. Output');
  58.     textColor(4);
  59.     writeln('4. Dispose');
  60.     textColor(7);
  61.     readln(answer);
  62.     case answer of
  63.     '1':
  64.       begin
  65.         write('Enter the new element to add: ');
  66.         readln(element);
  67.         push(element);
  68.       end;
  69.     '2':
  70.       begin
  71.         pop();
  72.         writeln;
  73.       end;
  74.     '3':
  75.       begin
  76.         output();
  77.         writeln;
  78.       end;
  79.     '4': dispose(pStackPointer);
  80.     end;
  81.     //writeln(pTemp^.info);
  82.  
  83.   until (answer = 'n');
  84.  
  85. end.
Advertisement
Add Comment
Please, Sign In to add comment