Baixe o app para aproveitar ainda mais
Prévia do material em texto
Computação e Algoritmos II – Vetores – Exercícios 02 Prof. Hiromasa Nagata Página 1 Revisão e Exercícios de Vetores 1) INTRODUÇÃO Vetores são usados para tratamento de conjuntos de dados que possuem as mesmas características. Uma das vantagens de usar vetores é que o conjunto recebe um nome comum e elementos deste conjunto são referenciados através de índices. Pelo nome vetor estaremos referenciando estruturas que podem ter mais de uma dimensão, como por exemplo, matrizes de duas dimensões. 2) DECLARAÇÃO DE VETORES UNIDIMENSIONAIS A forma geral da declaração de um vetor é: tipo nome [tamanho]; Onde tipo é um tipo qualquer de dados, nome é o nome pelo qual o vetor vai ser referenciado e tamanho é o número de elementos que o vetor vai conter. Observar que, em C, o primeiro elemento tem índice 0 e o último (tamanho – 1). Computação e Algoritmos II – Vetores – Exercícios 02 Prof. Hiromasa Nagata Página 2 Exemplos de declarações de vetores são: /* conjunto de 1000 numeros inteiros */ int numeros[1000]; /* conjunto de 65 numeros reais */ float notas[65]; /* conjunto de 40 caracteres */ char nome[40]; O espaço de memória, em bytes, ocupado por um vetor é igual a: Espaço = tamanho * (número de bytes ocupado por tipo) É importante notar que em C não há verificação de limites em vetores. Isto significa que é possível ultrapassar o fim de um vetor e escrever em outras variáveis, ou mesmo em trechos de código. É tarefa do programador fazer com que os índices dos vetores estejam sempre dentro dos limites estabelecidos pela declaração do vetor. O exemplo, mostrado abaixo, ilustra como se declara um vetor, inicializa seus valores e imprime o conteúdo. Notar o uso da diretiva #define DIM 5 para definir uma constante, que posteriormente foi usada para estabelecer o tamanho do vetor. Esta constante passa a ser usado nas referências ao vetor, observar o comando de geração do Computação e Algoritmos II – Vetores – Exercícios 02 Prof. Hiromasa Nagata Página 3 conjunto. Caso seja necessário trocar o tamanho do vetor basta alterar o valor da constante. /*Exemplo - Este programa gera um vetor contendo números inteiros*/ #define DIM 5 #include <stdio.h> #include <conio.h> main(){ int vetor[DIM]; unsigned int i, num; printf (“Entre com o numero inicial do conjunto.”); scanf (“%d”, &num); /* Geração do conjunto */ for (i = 0 ; i < DIM; i++) vetor[i] = num++; /* Impressão do conjunto */ for (i = 0; i < DIM; i++) printf (“Elemento %d = %d\n”, i, vetor[i]); getch(); } Computação e Algoritmos II – Vetores – Exercícios 02 Prof. Hiromasa Nagata Página 4 Exemplo - Fazer um programa que calcule o produto escalar de dois vetores inteiros. Por exemplo, vetores de 5 elementos. Atenção: Observar como na leitura dos elementos do vetor usa-se o operador de endereço & antes do nome de cada elemento. Resolução: /*Vetor.c*/ #define DIM 5 #include <stdio.h> #include <conio.h> main(){ int vetor1[DIM], vetor2[DIM], i, prod = 0; printf (“Entre com um vetor de %d elementos\n”, DIM); for (i = 0; i < DIM; i++){ printf (“Elemento %d “, i); scanf (“%d”, &vetor1[i]); } printf(“Entre com um outro vetor de %d elementos\n”, DIM); for (i = 0; i < DIM; i++){ printf (“Elemento %d “, i); scanf (“%d”, &vetor2[i]); } for (i = 0; i < DIM; i++) prod += vetor1[i] * vetor2[i]; printf(“O produto vale %d”, prod); getch(); } Computação e Algoritmos II – Vetores – Exercícios 02 Prof. Hiromasa Nagata Página 5 VETORES – EXERCICIOS 02 1) Faça um algoritmo que leia, via teclado, 10 valores do tipo inteiro e os guarde na memória na forma de vetor. Após carrega-lo exibi-lo na mesma ordem em que eles foram digitados. Atenção: o vetor poderá conter elementos iguais. 2) Faça um algoritmo que determine e exiba qual o menor valor existente no vetor do exercício número 1. Mostre também em que posição do vetor ele(s) se encontra(m). 3) Faça um algoritmo que determine qual o maior valor existente no vetor do exercício número 1. Mostre também em que posição do vetor ele(s) se encontra(m). 4) Faça um algoritmo que exiba quantos dos valores do exercício número 1 são maiores que a média desses valores. 5) Faça um algoritmo que leia o NUMERO DE MATRICULA e as NOTAS de 10 alunos (vetor) de uma disciplina. Após a leitura faça: a) Exiba o NUMERO DE MATRICULA e a média dos alunos aprovados (Média >= 7.0); b) Exiba o NUMERO DE MATRICULA e a média dos alunos em Recuperação ( Media 5.0 >= e Média < 7.0 ); c) Exiba o NUMERO DE MATRICULA e a média dos alunos reprovados ( Média < 5.0 ); d) Exiba o percentual de alunos aprovados; e) Exiba o percentual de alunos reprovados; Computação e Algoritmos II – Vetores – Exercícios 02 Prof. Hiromasa Nagata Página 6 6) Faça um algoritmo que: a) Leia um vetor A com n elementos já ordenados e um vetor B com m elementos também já ordenados. b) Intercale (“Merge”) os dois vetores A e B, formando um vetor C, sendo que ao final do processo de intercalação, o vetor C continue ordenado. Nenhum outro processo de ordenação poderá ser utilizado além da intercalação dos vetores A e B. c) Caso um vetor (A ou B) termine antes do outro, o vetor C deverá ser preenchido com os elementos do vetor que ainda possui informações.
Compartilhar