A Pilha é um
tipo de lista onde todas as operações de inserção e remoção dão feitas na mesma
extremidade ( Topo). O primeiro a entrar é o último a sair e o último a entrar
é o primeiro a sair (LIFO – Last-In First-Out). Trata-se de uma estrutura
dinâmica.
Program Pilha ;
Type Dados=record
nome:string;
idade:integer;
prox:^dados;
end;
Var p1, px:^Dados;
y,x:integer;
aux:^Dados;
z:char;
Procedure Inserir_dados;
begin
new(px);
writeln('nome:');
readln(px^.nome);
writeln('Idade:');
readln(px^.idade);
px^.prox:=p1;
p1:=px;
end;
Procedure Listar;
begin
Repeat
writeln('Nome:',px^.nome);
writeln('Idade:',px^.idade);
px:=px^.prox;
Until px=nil;
end;
Procedure Apagar;
begin
aux:=px^.prox;
dispose(px);
px:=aux;
p1:=aux;
writeln('Dado removido');
end;
Begin
p1:=nil;
Repeat
writeln('1- para introduzir dados');
writeln('2- para mostrar dados');
writeln('3- para eliminar');
writeln('Qual a opção?');
read(y);
Case y of
1:Inserir_dados;
2:Listar;
3:Apagar;
end;
writeln('Deseja continuar? (S ou N)');
readln(z);
Until z='N';
End.
Esquema Pilha
.png)
Sem comentários:
Enviar um comentário