Baixe o app para aproveitar ainda mais
Prévia do material em texto
Algoritmos Aplicados a Engenharia Aula 19 Os direitos desta obra foram cedidos à Universidade Nove de Julho Este material é parte integrante da disciplina, oferecida pela UNINOVE. O acesso às atividades, conteúdos multimídia e interativo, encontros virtuais, fóruns de discussão e a comunicação com o professor devem ser feitos diretamente no ambiente virtual de aprendizagem UNINOVE. Uso consciente do papel. Cause boa impressão, imprima menos. Aula 19: Vetores Objetivo: Compreender como ocorre a declaração de vetores, seu uso, sua inicialização e quais as vantagens em relação às variáveis simples. Um vetor é uma coleção de variáveis de mesmo tipo que compartilham um mesmo nome. São frequentemente utilizados quando há a necessidade de cálculos que envolvem diversos valores ou retornam diversos resultados. O uso dos vetores Imagine o problema de calcular a média aritmética de cinco alunos. Um exemplo seria o dado a seguir: Com o código acima o problema estaria resolvido. Uma sala com apenas cinco alunos, porém, é quase impossível, não é verdade? Se a sala tiver 60 alunos, a tarefa já se torna mais complicada. Portanto, fica claro que é necessário encontrar uma maneira mais eficiente de abordar um problema desse tipo. Um vetor é o tipo de dado oferecido por C para esse propósito, pois é um conjunto de variáveis de mesmo tipo e referenciadas por um único nome. Cada variável é diferenciada por meio de um número chamado índice. Os colchetes são usados para conter o índice. #include <stdio.h> #include <stdlib.h> int main() { int nota0, nota1, nota2, nota3, nota4; float media; printf("Digite a nota do aluno 1: "); scanf("%d",¬a0); printf("Digite a nota do aluno 2: "); scanf("%d",¬a1); printf("Digite a nota do aluno 3: "); scanf("%d",¬a2); printf("Digite a nota do aluno 4: "); scanf("%d",¬a3); printf("Digite a nota do aluno 5: "); scanf("%d",¬a4); media = (nota0 + nota1 + nota2 + nota3 + nota4) / 5.0; printf("Media das notas: %.2f\n",media); system("PAUSE"); return 0; } Veja o novo código utilizando um vetor para calcular a média dos mesmos cinco alunos: Declaração de um vetor Assim como qualquer variável, um vetor também deve ser declarado. Dessa forma, o compilador pode reservar a quantia exata de memória que será necessária para que o programa funcione adequadamente. O que diferencia a declaração de uma matriz da de qualquer outra variável é a parte que acompanha seu nome, isto é, o par de colchetes ([ e ]) que envolve um número inteiro, indicando o tamanho do vetor. A instrução informa que o vetor nota é formado por cinco elementos do tipo int. Por definição, uma matriz é composta por elementos de um único tipo. Acessando os elementos de um vetor Como visto no código apresentado para o cálculo das médias utilizando um vetor, cada elemento do vetor pode ser acessado individualmente por um número inteiro, entre colchetes, após o nome da matriz. Quando se referencia um elemento, esse número tem um significado diferente daquele da declaração da matriz, o qual indica sua dimensão. Veja a seguir: #include <stdio.h> #include <stdlib.h> int main(){ int nota[5]; int i; float media = 0.0; for (i=0; i<5; i++){ printf("Digite a nota do aluno %d: ",i+1); scanf("%d",¬a[i]); media+=nota[i]; } media /= 5.0; printf("Media das notas: %.2f\n",media); system("PAUSE"); return 0; } int nota[5]; nota[3] = 10; atribui o valor 10 ao quarto elemento da matriz, pois a numeração sempre começa em zero. Quando escrevemos nota[i], estamos nos referindo a uma variável do tipo int como outra qualquer. Assim, em todo lugar em que o uso de uma variável do tipo int for necessária, podemos usar nota[i]. Apesar de termos definido a variável nota como sendo do tipo int, ela poderia ter sido definida como qualquer outro tipo de variável. Veja a seguir: Outro ponto importante é a inclusão da diretiva Usar #define no lugar de um número constante facilita a alteração do tamanho do vetor. Se o número de alunos for alterado de cinco para dez, pode-se facilmente fazer a alteração em uma única linha no código. Inicializando um vetor A inicialização de um vetor é similar à inicialização de uma variável qualquer, com a exceção de que temos de informar os valores das posições do vetor. Exemplo: A lista de valores é colocada entre chaves e os valores são separados por vírgulas. Eles são atribuídos na sequência em que são escritos, isto é, dmes[0] terá o valor inicial 31, dmes[1] terá o valor inicial 28 e assim por diante. #include <stdio.h> #include <stdlib.h> #define TAMANHO 5 int main() { float nota[TAMANHO], media = 0.0; int i; for (i=0; i<5; i++){ printf("Digite a nota do aluno %d: ",i+1); scanf("%f",¬a[i]); media+=nota[i]; } media /= 5.0; printf("Media das notas: %.2f\n",media); system("PAUSE"); return 0; } #define TAMANHO 5 int dmes[12] = {31,28,31,30,31,30,31,31,30,31,30,31}; Se for informado uma quantidade menor de valores em relação ao tamanho do vetor, as posições restantes do vetor receberão o valor zero. Se for informado um valor maior, um erro será informado. * O QR Code é um código de barras que armazena links às páginas da web. Utilize o leitor de QR Code de sua preferência para acessar esses links de um celular, tablet ou outro dispositivo com o plugin Flash instalado. Referências DASGUPTA, Sanjoy; PAPADIMITRIOU, Christos; VAZIRANI, Umesh. Algoritmos. São Paulo: McGraw Hill, 2009. HEINEMAN, George T.; POLLICE, Gary; SELKOW, Stanley. Algoritmos: o guia essencial. Rio de Janeiro: Alta Books, 2009. MANZANO, André Luiz N. G.; MANZANO, Maria Izabel N. G. Estudo dirigido de informática básica. São Paulo: Érica, 2008. MANZANO, José Augusto N. G. Estudo dirigido de linguagem C. São Paulo: Érica, 2009. MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de Oliveira. Algoritmos, Lógica para desenvolvimento de programação de computadores. São Paulo: Érica, 19 ed., 2006. MIZRAHI, Victorine Viviane. Treinamento em linguagem C. São Paulo: Pearson, 2008. 2v. SCHILDT, Herbert. Mayer. C completo e total. São Paulo: Pearson, 2006. VILARIM, Gilvan. Algoritmos de programação para Iniciantes. São Paulo: Ciência Moderna, 2004.
Compartilhar