Espero ajudar com alguma coisa, mesmo que o código esteja um pouco quebrado...
Algoritmo "pilhas"
var
comando: caractere
floor, qtd: inteiro
pilha: vetor [1..10] de inteiro
Procedimento Menu()
Inicio
Escreval()
Escreval(" Estrutura LIFO - Pilhas ")
Escreval(" --------------------------------------------------- ")
Escreval()
Escreval(" (E) Empilhar | (D) Desempilhar ")
Escreval()
Escreval(" (X) Encerrar e Imprimir a Pilha ")
Escreval()
Escreval(" --------------------------------------------------- ")
Escreval()
FimProcedimento
Procedimento RenderizarMenu()
Inicio
LimpaTela
Menu
FimProcedimento
Procedimento Instancias()
Inicio
floor <- 0
qtd <- 0
FimProcedimento
Procedimento Empilhar()
var
valor: inteiro
Inicio
Escreval(" EMPILHANDO... ")
Escreval()
Escreva (" Digite um valor: ")
leia (valor)
Se PilhaCheia então
Escreva (" Pilha Cheia!!! ")
senao
// Armazenar na pilha
Instancias()
floor <- floor + 1
pilha[floor] <- valor
qtd <- qtd + 1
Escreva ("Itens da Pilha: ", qtd)
// Atualizar Itens da Pilha
ListarPilha()
FimSe
FimProcedimento
Funcao PilhaCheia(): logico
Inicio
Se (floor > 10) então
retorne verdadeiro
senao
retorne falso
FimSe
FimFuncao
Procedimento Desempilhar()
var
valor: inteiro
Inicio
Escreval(" DESEMPILHANDO... ")
Escreval()
Escreva (" Remover o valor: ")
leia (valor)
Se PilhaCheia() então
Escreva (" Pilha Vazia!!! ")
senao
// Remover na pilha
floor <- floor - 1
pilha[floor] <- valor
FimSe
// Atualizar Lista
ListarPilha()
FimProcedimento
Funcao PilhaVazia(): logico
Inicio
Se (floor = 0) então
retorne verdadeiro
senao
retorne falso
FimSe
FimFuncao
Procedimento ListarPilha()
Inicio
Escreval(" LISTANDO... ")
Escreval()
// Listando os valores empilhados ou desempilhados
Para i de 1 ate floor faca
Escreva (i, "º Elemento da Pilha: ", pilha[i])
FimPara
FimProcedimento
Procedimento LimparPilha()
Inicio
Escreval(" LIMPANDO... ")
Escreval()
pilha[floor] <- ""
FimProcedimento
Inicio
Menu()
// Camada de Input
Escreva (" Insira um comando: ")
leia(comando)
// Camada de Events da Pilha [Boas Práticas => Responsabilidade Única]
Escolha comando
Caso "E"
RenderizarMenu()
Empilhar()
Caso "D"
RenderizarMenu()
Desempilhar()
OutroCaso
RenderizarMenu()
FimEscolha
Fimalgoritmo