Для стека:const MAX_SIZE = 100;var size, n: integer; stack: array[1..MAX_SIZE] of integer;procedure push(a: integer);begin inc(size); stack[size] := a;end;procedure view;var i: integer;begin for i := 1 to size do write(stack[i], ' '); writeln;end;
Для очереди:const MAX_SIZE = 100;var head, tail: integer; queue: array[1..MAX_SIZE] of integer;procedure push(a: integer);begin queue[tail] := a; inc(tail);end;procedure view;var i: integer;begin for i := head to tail - 1 do write(queue[i], ' '); writeln;end;
И стек и очередь реализованы с помощью массива. Нужно следить, чтобы размер структуры не был больше размера массива