Baixe o app para aproveitar ainda mais
Prévia do material em texto
imagens/126 Suma´rio 1 Vetores 2 Matrizes Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 1 / 14 imagens/126 Vetores A a forma mais simples de um vetor e´ unidimencional, que pode ser definido abstratamente como um conjunto finito e ordenado de elementos homogeˆneos(TENENBAUM, 1995). Objetivo - manter um grande nu´mero de informac¸o˜es na memo´ria. Como declarar um vetor em C ? declarando um vetor : <tipo de dados> <nome do vetor> [<tamanho>] Por exemplo, vamos declarar 10 inteiros que va˜o representar a idade de 10 pessoas: int idade[10] Agora 50 floats que va˜o representar a nota de 50 alunos: float notas[50] Agora amazenar 5 nomes char nomes[5] Como usar acessar os elementos de um vetor em C ? Armazenar a nota de um aluno que tirou 10 nota[10]= 10.0 Somar a nota de dois alunos: float soma = nota[3] + nota[4]; Incrementar: nota[5]++; Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 2 / 14 imagens/126 Vetores Fac¸a um programa que pec¸a 3 nu´meros inteiros ao usua´rio, armazene em um vetor, depois mostre o valor de cada elemento do vetor, assim como seu ı´ndice. Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 3 / 14 imagens/126 Vetores Fac¸a um programa em C que pec¸a ao usua´rio duas notas que ele tirou e mostre a me´dia. Use vetores! Alia´s, use somente um vetor para essas treˆs varia´veis. Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 4 / 14 imagens/126 Inicializando vetores Os vetores poden ser inicializados assim com as varia´veis. Ex: Veja, pra inicializar um vetor de 3 inteiros: int numeros[3] = {1, 2, 3} como sa˜o va´rios valores precisamos inicialzar com as chaves numeros[0] = 1;numeros[1] = 2; numeros[2] = 3 No caso de caracteres : char curso[14] = {’C’, ’ ’, ’P’, ’r’, ’o’, ’g’, ’r’ , ’e’, ’s’, ’s’, ’i’, ’v’, ’o’,’n’} Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 5 / 14 imagens/126 Exemplos Figure: Exemplo de Vetor - Distribuic¸a˜o da temperatura em uma barra Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 6 / 14 imagens/126 Exerc´ıcios em sala Exec´ıcios com vetores 1 Escreva um algoritmo que leˆ um vetor A(10) e escreva a posic¸a˜o de cada elemento igual a 10 deste vetor. 2 Escreva um algoritmo que leˆ um vetor A(10) e exiba qual elemento e´ par e qual e´ ı´mpar. 3 Crie um programa em C que pec¸a 10 nu´meros, armazene eles em um vetor e diga qual elemento e´ o maior, qual e´ o menor e seus valores 4 Crie um programa em C que pec¸a 10 nu´meros, armazene eles em um vetor e diga qual elemento e´ o menor, e seu valor. 5 Fac¸a um algoritmo que leia 10 valores e os escreva na ordem contra´ria a` que foram digitados Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 7 / 14 imagens/126 Exerc´ıcios Exec´ıcios com vetores 1 Crie um aplicativo em C que pec¸a um nu´mero inicial ao usua´rio, uma raza˜o e calcule os termos de uma P.A (Progressa˜o Aritme´tica), armazenando esses valores em um vetor de tamanho 10. 2 Escreva um algoritmo que gera os 10 primeiros nu´meros primos acima de 20 e os armazena em um vetor X(10) escrevendo, no final, o vetor X. 3 Escreve um programa que sorteio, aleatoriamente, 10 nu´meros e armazene estes em um vetor. Em seguida, o usua´rio digita um nu´mero e seu programa em C deve acusar se o nu´mero digitado esta´ no vetor ou na˜o. Se estiver, diga a posic¸a˜o que esta´. Para gerar um nu´mero aleato´rio usaremos a func¸a˜o rand() na biblioteca <stdlib>. 4 Escrever um algoritmo que leˆ, para um vetor V(30), vinte valores que ocupara˜o as 20 primeiras posic¸o˜es do vetor V. Ordene, a seguir, os elementos de V em ordem crescente. Leia, a seguir 10 valores A, um por vez, e insira-os nas posic¸o˜es adequadas do vetor V, de forma que o mesmo continue ordenado em ordem crescente. Exiba o vetor V Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 8 / 14 imagens/126 Vetores multidimencionais ou matrizes Matrizes sa˜o arrays multidimencionais onde podemos trabalhar com linhas e colunas. Ex : Na escola, esse aluno tem va´rias mate´rias: Matema´ticas, F´ısica, Qu´ımica, Biologia etc. Vamos supor que existam 5 provas ao longo do ano, para cada mate´ria. Poder´ıamos representar as notas de cada aluno da seguinte maneira: float notasMatematica[5]; float notasFisica[5]; float notasQuimica[5]; Cada coluna representa as provas feitas: prova 1, prova 2, ... etc. Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 9 / 14 imagens/126 Vetores multidimencionais ou matrizes Como ficaria a declarac¸a˜o da matriz em C, bem como sua inicializac¸a˜o. Veja abaixo: Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 10 / 14 imagens/126 Vetores multidimencionais ou matrizes - Exemplos Exemplo 1 : Criar e exibir uma matriz 3x3. Crie um aplicativo em C que pec¸a ao usua´rio para preencher uma matriz 3x3 com valores inteiros e depois exiba essa matriz. Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 11 / 14 imagens/126 Vetores multidimencionais ou matrizes - Exemplos Exemplo 2 : Use o programa feito no exemplo anterior para calcular a diagonal principal de uma matriz . Dica : Voceˆ ira´ calcular os valores matriz[0][0], matriz[1][1] e matriz[2][2]. Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 12 / 14 imagens/126 Exemplos Figure: Exemplo de Matriz - Distribuic¸a˜o da temperatura em uma placa de metal Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 13 / 14 imagens/126 Exerc´ıcios Exec´ıcios com matriz 1 Escreva um algoritmo que leˆ uma matriz M[5,5]. Substitua, a seguir, todos os valores negativos da matriz pelo seu mo´dulo. Exemplo: substitua -2 por 2, -16 por 16, assim por diante. 2 Escreva um algoritmo que leˆ uma matriz M[6,6]. A seguir, troque os elementos da primeira coluna com os elementos da segunda coluna, os da terceira coluna com a quarta coluna e os elementos da quinta coluna com os elementos da sexta coluna. 3 Repita o exerc´ıcio anterior, trocando os elementos das linhas, ao inve´s das colunas. 4 Fac¸a um algoritmo que leia uma matriz 10x10 de nu´meros e encontre o maior valor da matriz. A seguir, multiplique cada elemento da diagonal principal pelo maior valor. Mostre a matriz apo´s as multiplicac¸o˜es e o valor que foi multiplicado. Todos os exemplos de vetores e matrizes foram extra´ıdos e adaptados de :http://www.cprogressivo.net/p/vetores-em-linguagem-c.html Jose´ Luiz Vilas Boas Linguagem de Programac¸a˜o March 12, 2015 14 / 14 Vetores Matrizes
Compartilhar