28.02.2023 Views

Logica_de_Programacao_3_Edicao_Livro

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Capítulo 7 Estruturas de dados avançadas 1 157

Em outro exen1plo, imaginemos a preparação de u1na lista de larefas a sere1n cu1npridas

110 centro da cidade. Inicialme11te, cada atividade é relacio11ada, co11for1ne vai surgit1do na

1ne1nória, até que se esgoten1. Temos, então, o seguinte:

Lista de tarefas

1. Pagar as contas no banco

2. Comprar os 1 i vros na 1 i vrari a

3. Deixar o carro no estacionamento

4. Pegar algumas fitas na videolocadora

5. Enviar correspondências pelo Correio

6. Buscar as fotos reveladas

7. Autenticar documentos no Cartório

8. Passar na banca de jornais

Agora, um pouco de planejamento: é preciso estabelecer un1a ordem a ser seguida conforme

os rnais variados critérios (pré-requisitos, prioridades, proxirnidade geográfica etc.). Porén1,

não iremos reescreve r a lista, varnos apenas acrescentar uma coluna, co1no apresentado

.

a seguir:

Lista de tarefas

Começo em: 3

Item

Próximo

1 . Pagar as contas no banco 6

2. Comprar os livros na livraria 4

3. Deixar o carro no estacionamento 8

4. Pegar algumas fitas na videolocadora Final

5. Enviar correspondências pelo Correio 1

6. Buscar as fotos reveladas 2

7. Autenticar documentos no Cartório 5

8. Passar na banca de jornais 7

1en10s, então, a n1es1na linha de antes, só que agora ela está e ncadeada, porque cada

ele111ento 'apo11ta para ' u1n sucessor, ou seja, cada ele1ne11to indica o próxi1110 d a lista co1110

se apontasse para este.

D ECLARAÇÃO

Para representar a lista do exemplo, precisamos do seguinte vetor ele registros:

tipo reg = registro

caracter: item;

inteiro: PROX;

fimregistro;

tipo VET = vetor [1 .. 100] de reg;

VET: 1 i sta;

inteiro: começo;

começo~ 3;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!