Baixe o app para aproveitar ainda mais
Prévia do material em texto
Estrutura de Dados Homogêneas do tipo vetor Um arranjo é uma variável estruturada, formada pelo agrupamento de variáveis de mesmo tipo (inteiro, real, etc.). Dessa forma, considerando um certo código, um arranjo pode ser indexado em momentos diferentes por diferentes variáveis ou constantes, que podem igualmente ser usadas em outros momentos para a indexação de outros arranjos. Um vetor é um arranjo de uma só dimensão que, portanto, necessita um só índice paraacessar seus elementos. Características de um vetor: ■ nome, comum a todos os seus elementos; ■ índices que identificam, de modo único, a posição dos elementos dentro do vetor; ■ tipo dos elementos (inteiros, reais, etc.), comum a todos os elementos do vetor; ■ conteúdo de cada elemento do vetor arranjo [<índice menor>..<índice maior>] de <tipo do vetor> Variável: nota (arranjo [1..10] de real) O acesso a um elemento de um vetor é feito indicando o nome do vetor seguido do índice do elemento considerado, colocado entre colchetes. Assim, a referência ao sétimo elemento do vetor nota é nota[7]. para k de 1 incr 1 até NUMQUEST faça escrever(gabarito[k], respostas[k]) inicialização de vetores O trecho a seguir inicializa todos os elementos do vetor nota, de 10 elementos reais, com zeros: para i de 1 incr 1 até 10 faça nota[i] ← 0 operações sobre um só vetor Os trechos de código a seguir executam algumas operações sobre um vetor inteiro de 5 elementos chamado de valor: Constante: MAX = 5 Variável: valor (arranjo [1..MAX] de inteiro) DESAFIO! Uma companhia aérea gostaria de organizar as informações de seus voos, e você foi contratado para construir um algoritmo que receba um conjunto de códigos de voos e duração (tempo) de cada um. A companhia aérea possui 30 voos. algoritmo "voos" var codigos: vetor[1..30] de inteiro duracao: vetor[1..30] de inteiro indice: inteiro inicio leitura das informações de cada voo para indice de 1 ate 30 passo 1 faca escreval("Voo[",indice,"]: ") escreva("Código do Voo: ") leia(codigos[indice]) escreva("Duração do Voo: ") leia(duracao[indice]) fimpara informações de cada voo para indice de 1 ate 30 passo 1 faca escreval("Voo[",indice,"]: ") escreval("Codigo[",indice,"]: ",codigos[indice]) escreval("Duracao[",indice,"]: ",duracao[indice]) fimpara fimalgoritmo EXERCICIOS! 1. Em relação às estruturas de dados homogêneas, é INCORRETO afirmar que: B. Vetores somente são úteis para pequenos conjuntos de dados (menores que 10 elementos), pois, para grandes conjuntos, o ideal é utilizar diversas variáveis simples (individuais). 2. Um vetor é um arranjo de uma só dimensão que, portanto, necessita de apenas um índice para acessar seus elementos. Selecione a alternativa a seguir que NÃO apresenta uma característica de um vetor. Passagem de parâmetro complexa, pois exige a enumeração de cada elemento do vetor. Passagem de parâmetro simplificada, pois apenas ao referenciar o nome do vetor, todos os seus elementos serão passados juntos. 3. Considere o seguinte algoritmo em pseudocódigo: algoritmo "vetores" var valores: vetor[1..5] de real indice: inteiro inicio para indice de 1 ate 5 passo 1 faca escreva("Digite valor: ") leia(valores[indice]) fimpara fimalgoritmo Analise as alternativas a seguir e selecione a verdadeira. E. Para acessar um elemento de um vetor, deve-se acessar o índice da posição desejada; para o índice, pode-se utilizar uma variável ou uma constante inteira. O acesso a cada elemento do vetor é feito por sua indexação; para isso, é possível utilizar uma variável ou constante com o valor da posição que se deseja acessar. 4. Considere o seguinte algoritmo em pseudocódigo (os dois dígitos à esquerda identificam o número da linha do algoritmo): 01- algoritmo "vetores" 02- var 03- valores: vetor[1..5] de real 04- indice: inteiro 05- inicio 06- para indice de 1 ate 5 passo 1 faca 07- escreva("Digite valor: ") 08- leia(valores[indice]) 09- fimpara 10- para indice de 1 ate 5 passo 1 faca 11- escreval("Valor[",indice,"]: ",valores[indice]) 12- fimpara 13- fimalgoritmo Analise as alternativas a seguir e selecione a INCORRETA. C. Se forem trocados de lugar os blocos de instruções das linhas 06-09 com 10-12, o programa será executado da mesma forma e funcionará corretamente. Os dados serão mostrados e o vetor será lido. Normalmente, o processo de trabalhar com um vetor inclui a leitura ou atribuição de informações para os elementos do vetor e somente depois é possível mostrar o seu conteúdo. 5. Considere o seguinte algoritmo em pseudocódigo: algoritmo "vetores" var v1: vetor[1..5] de real v2: vetor[1..4] de real v3: vetor[1..9] de real indice: inteiro inicio para indice de 1 ate 5 passo 1 faca escreva("Digite valor: ") leia(v1[indice]) fimpara para indice de 1 ate 4 passo 1 faca escreva("Digite valor: ") leia(v2[indice]) fimpara para indice de 1 ate 9 passo 1 faca se (indice <= 5) entao v3[indice] <- v1[indice] senao v3[indice] <- v2[indice-5] fimse fimpara para indice de 1 ate 9 passo 1 faca escreval("Valor[",indice,"]: ",v3[indice]) fimpara fimalgoritmo Analise as afirmativas a seguir e selecione a correta. C. O vetor v3 é o resultado da concatenação dos vetores v1 e v2. O algoritmo lê os vetores v1 e v2 e, depois, passa os elementos de v1 para v3. Na sequência, passa os elementos de v2 para v3. Portanto, realiza a concatenação dos elementos de v1 e v2 em v3.
Compartilhar