Baixe Vetores (revisão Estrutura de DadosEstrutura de Dados (cont Utiliza e outras Notas de estudo em PDF para Engenharia Elétrica, somente na Docsity! Coordenação dos Cursos de Informática Disciplina 07/27/19 Prof. Heverton Barros de Macêdo. 1 Vetores (revisão) Estrutura de Dados Prof. Heverton Barros de Macêdo. 207/27/19 Agenda Introdução; Principais Características; Utilização; Declaração; Espaço em memória; Acesso e percurso; Exercícios. Prof. Heverton Barros de Macêdo. 507/27/19 Principais Características Por definição todos os elementos de um vetor obedecem ao mesmo tipo de dado (estrutura homogênea). Os vetores possuem característica estática, sendo assim, ao serem criados necessitam da especificação de seu tamanho. Outra característica dos vetores diz respeito a ocupação de posições contíguas em memória. * Em algumas linguagens (como PHP) os vetores não são homogêneos e nem estáticos, podendo ou não ocupar espaço em memória de forma consecutiva. Prof. Heverton Barros de Macêdo. 607/27/19 Utilização Os vetores geralmente são empregados quando é necessário ou conveniente representar dados em uma mesma estrutura para futuras comparações e/ou cálculos. Por exemplo: Ao realizar a leitura de vários números e posteriormente indicar quais números estão acima da média. No restante do material será utilizada a sintaxe da linguagem C para utilização de vetores e matrizes. Prof. Heverton Barros de Macêdo. 707/27/19 Declaração Em linguagem C/C++ a declaração de um vetor segue a seguinte sintaxe: <tipo> <variável> [<tamanho>]; <tipo> Tipo de dado correspondente a cada elemento do vetor <variável> Nome ou identificador do vetor <tamanho> Quantidade de elementos do vetor É possível fazer a declaração de mais de uma variável (separada com virgula) aproveitando o mesmo tipo: <tipo> <variável> [<tamanho>], <variável> [<tamanho>], ... ; Prof. Heverton Barros de Macêdo. 1007/27/19 Declaração (cont.) Exemplo 2: float notas[5], pesos[7]; Reserva um espaço para armazenar 5 números de ponto flutuante para a variável notas e 7 números de ponto flutuante para a variável pesos. notas pesos 0 1 2 3 4 0 1 2 3 4 5 6 Prof. Heverton Barros de Macêdo. 1107/27/19 Declaração (cont.) Exemplo 3: int idades[8] = {23, 20, 14, 17, 29, 10, 34, 23}; Reserva um espaço para armazenar 8 números inteiros para a variável idades e faz a inicialização da variável. idades 23 20 14 17 29 10 34 23 0 1 2 3 4 5 6 7 Prof. Heverton Barros de Macêdo. 1207/27/19 Espaço em memória A quantidade de espaço necessário para armazenar um vetor está diretamente relacionada com seu tamanho e seu tipo. Total em bytes = sizeof(<tipo>) * tamanho da matriz Ex: considere uma variável inteira ocupando 4 bytes. int x[10] 4 bytes * 10 elementos 40 bytes Prof. Heverton Barros de Macêdo. 1507/27/19 Percorrendo um Vetor (cont.) Exemplo: //Leitura de um vetor int i,idades[7]; for (i=0; i<7; i++){ printf("V[%i]=",i); scanf("%i",&idades[i]); } //Escrita na tela para o vetor ao lado for (i=0; i<7; i++){ printf("V[%i] = %i \n", i, idades[i]); } Prof. Heverton Barros de Macêdo. 1607/27/19 Exercícios 1) Construa um programa que leia um vetor de 12 posições e atribua o valor 0 para todos os elementos que possuírem valores negativos. Exemplo: considere os valores digitados para preencher o vetor {1, 2, -3, 2, 0, -5, -1, 3, -2, -10, 5, 2}, teríamos então: Como resultado, temos: Prof. Heverton Barros de Macêdo. 1707/27/19 Exercícios 2) Construa um programa que leia um vetor de 10 posições. Em seguida leia dois valores quaisquer X e Y, correspondentes a duas posições no vetor. Como resultado o programa deverá escrever a soma dos valores encontrados nas posições X e Y. Por exemplo: considere os valores digitados para preencher o vetor {3, 100, 56, 32, 5, 98, 4, 2, 3, 100}, teríamos então: Considere que o usuário tenha digitado para X o valor 4 e para Y o valor 8. Como resultado temos o valor 18, ou seja, (vetor[4] + vetor[8]) (15 + 3) 18. OBS: Os valores de X e Y devem estar dentro do tamanho mínimo e máximo do vetor. Prof. Heverton Barros de Macêdo. 2007/27/19 Exercícios 5) Desenvolva uma função que receba um vetor de 12 posições e faça a troca dos 6 primeiros valores pelos 6 últimos e vice-versa. Escreva ao final o vetor obtido. Por exemplo: considere o seguinte vetor já preenchido: Como resultado da troca de valores temos: Prof. Heverton Barros de Macêdo. 2107/27/19 Exercícios 6) Desenvolva um programa que leia um vetor de 15 posições. Em seguida o programa deverá contar e escrever quantos valores pares foi encontrado no vetor lido. Prof. Heverton Barros de Macêdo. 2207/27/19 Exercícios 7) Construa um programa que leia dois vetores de 5 posições e produza um outro vetor tal que nas posições (índices) pares serão utilizados os valores do primeiro vetor e nas posições ímpares os valores do segundo. Por exemplo: considere os dois vetores abaixo já preenchidos: Como resultado, temos: