






Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Material de Apoio as aulas de Programação
Tipologia: Notas de aula
1 / 11
Esta página não é visível na pré-visualização
Não perca as partes importantes!
type Ponteiro = ^TipoNo; TipoItem = record Chave: TipoChave; {outras declarações desejadas...} end; TipoNo = record Item: TipoItem; Prox: Ponteiro; end; TipoFila = record Frente: Ponteiro; Retaguarda: Ponteiro; end;
procedure Enfileirar (x:TipoItem; var Fila:TipoFila); begin new(Fila.Retaguarda^.Prox); Fila.Retaguarda := Fila.Retaguarda^.Prox; Fila.Retaguarda^.Item := x; Fila.Retaguarda^.Prox := nil; end; end; procedure Imprimir (Fila: TipoFila); var pont : Ponteiro; {Não passar a fila como referência. Ao sair do algoritmo, a fila estará com os elementos intactos} begin while not Vazia (F) do begin Desenfileirar (F, pont); writeln(pont^.Item.Chave); end; end;
procedure Desenfileirar (var Fila:TipoFila; var x:TipoItem); var Paux: Ponteiro; begin if Vazia(Fila) then writeln(‘Underflow’) else begin Paux := Fila.Frente^.Prox; Fila.Frente^.Prox := Paux^.Prox; x := Paux^.Item; dispose(Paux); end; end;