Your SlideShare is downloading. ×
Curso De Algoritmo   Aula 10
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Curso De Algoritmo Aula 10

1,564
views

Published on

Published in: Education, Technology, Business

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,564
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
43
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. http://olinux.uol.com.br/artigos/444/print_preview.html Curso de Algoritmo - Aula X Por: Jorge Luiz E. Sousa ( 15/02/2002 ) Introdução Olá, comunidade! Hoje começa uma nova faze do curso, onde veremos algumas estruturas novas e muito importantes para programação. São chamadas VETORES. Definição São estruturas unidimensionais e homogêneas capazes de armazenar um número determinado de variáveis e referenciálas utilizando uma estrutura de índice. De acordo com esta descrição, vejamos um exemplo: Exemplo de um vetor de 8 (oito) posições 5 15 25 100 0 21 35 50 Exemplo de um vetor de 8 (oito) posições 'JLes' 'Exemplo' 'de' 'VETORES' '' '' '' '' Observe nas estruturas acima, que: q No primeiro exemplo temos um vetor numérico q No segundo temos um vetor literal q Os dois exemplos estão totalmente preenchidos q O primeiro vetor foi inicializado com zeros q O segundo vetor foi inicializado com '' (espaços/vazio) q Ambos são homogêneos, isto é, seu conteúdo é do mesmo tipo q Ambos são unidimencionais, um índice basta para referenciar as posições do vetor. Com a explicação acima, concluimos que vetores são variáveis com múltiplas posições. Sintaxe A sintaxe de declaração de variáveis para vetores é: Declare <NomeDaVariável> : Vetor [INI .. FIM] TipoDoVetor Onde: q Declare é a palavra reservada para declaração de variáveis (sempre no início do Algoritmo) q <NomeDaVariável> : é o nome dado pelo usuário para a variável q Vetor é a palavra reservada para definir que uma variável é do tipo VETOR q [INI .. FIM] define a quantidade de ítens de um vetor q TipoDoVetor define o tipo de variável que o vetor vai armazenar. Exemplo: Declare vetNome : vetor [1..50] literal Declare vetSalario : vetor [1..50] numérico inteiro Características q Unidimensionais,
  • 2. q Homogêneos, q Um mesmo indice pode acessar valores em vários vetores distintos, desde que haja uma relação entre eles e sejam "do mesmo tamanho". q Ao tentar acessar uma posição inexistente, ocorrerá um erro no programa. q Vetores só existem na memória do computador e durante a execução de um programa ou "PROCEDIMENTO", não sendo estruturas para armazenamento permanente. Obs.: PROCEDIMENTOS e FUNÇÕES serão matéria de aulas futuras Referência Para acessar uma determinada posição do vetor, será necessário informar o nome do vetor e a posição desejada. Exemplo: NomeAtual <- vetNome[40] SalarioAtual <- vetSalario[40] Aplicação Estas estruturas são utilizadas para armazenar temporáriamente vários valores relacionados. Como mostrado no exemplo anterior, podemos ter vários vetores de "N" posições, armazenando dados diferentes e relacionados, "SIMULANDO EM MEMÓRIA", o armazenamento de informações, para referência futura. Exemplo Como exemplo, vamos criar uma agenda virtual, que durante sua execução, armazenará: Nome, Telefone, endereço e e-mail de 100 pessoas. Algoritmo Declare Nome,Ender,Telefone,EMail: vetor [1..100]literal Indice: numérico inteiro //Início do algoritmo //Inicializando indice Indice<-1 //Inicializando vetores Parai<- 1 até 100 Faça Nome[i]<-'' Ender[i]<-'' Telefone[i]<-'' EMail[i]<-'' FimPara //Obtendo dados do usuário Para i<- 1 até 100 Faça Escreva('Digite o nome:') Leia(Nome[i]) Escreva('Digite o Endereco') Leia(Ender[i]) Escreva('Digite o Telefone') Leia(Telefone[i]) Escreva('Digite o e-mail') Leia(EMail[i]) FimPara //Listando todos os registros em sequência Parai<- 1 até 100 Faça Escreva(Nome[i]) Escreva(Ender[i])
  • 3. Escreva(Telefone[i]) Escreva(EMail[i]) FimPara FimAlgoritmo Análise do algoritmo exemplo Primeira Análise O algoritmo acima contém muitas falhas, mas para uma visão inicial, serve ao propósito. Segunda Análise Note que a mesma estrutura "PARA" foi utilizada para todos os processos, a saber: Inicialização dos vetores, obtenção dos dados e associação dos mesmos à uma mesma pessoa e impressão dos dados. Terceira análise O algoritmo, por utilizar a estrutura para, quando estiver no segundo laço (obtenção dos dados), não vai parar antes de ler todos os 100 registros. Isto pode ser muito cansativo e é desagradável pensar que estes dados serão perdidos assim que se chegar ao fim do algoritmo. Quarta análise Vetores são estruturas interessantes e úteis, mas não para uma agenda. sendo que a melhor utilização desta estrutura seria, como forma, por exemplo, de guardar os últimos 100 registros lidos de um banco de dados na memória para acesso imediato. Desta maneira, o acesso a disco (que é lento), seria feito "uma vez somente", e os dados seriam acessados a partir da memória, que é muito mais eficiente e rápido. Conclusão Com o decorrer do curso, utilizaremos este mesmo algoritmo, melhorando-o a cada novo recurso aprendido. Ao final, teremos um algoritmo de agenda completo, com arquivamento em disco e tudo o que mais for de direito de uma agenda, inclusive o Programa codificado em pascal para DOS, utilizando a interface do Delphi para implementação. A próxima aula será sobre matrízes. Espero que tenham apreciado, Críticas e Sugestões são bem vindas! Copyright (C) 1999- 2 0 0 0 Linux Solutions