program PrStos; var k : integer; type stos = ^node; node=record val: integer; next: stos; end; var head: ^node; procedure addstos (x:integer); var pom:^node; begin new(pom); pom^.val:=x; pom^.next:=head; head:=pom; end; procedure delstos; var pom:^node; begin if head <>NIL then begin pom:=head; head:= pom^.next; dispose(pom); end; end; procedure show; var pom:^node; begin pom:=head; write('HEAD --> '); while (pom<>NIL) do begin write(pom^.val, '--> '); pom:=pom^.next; end; writeln ('NIL'); end; begin head :=NIL; addstos(5); show; addstos(15); show; addstos(25); show; delstos; show; readln; end.