Buscar

19 Matrizes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Matrizes
Capacitar para trabalhar com matrizes, dado o acúmulo de conhecimento
suficiente para declarar matrizes de diferentes dimensões e tipos, como
inicializar matrizes, como referenciar um elemento particular da matriz e como
passar uma matriz para uma função.
Na aula passada foi apresentado o uso de vetores. Uma matriz pode ser definida como uma
cadeia de vetores de mesmo tipo, ou seja, para ser uma matriz, a estrutura dela deve possuir ao
menos 2 linhas e duas colunas de dados. Como veremos nesta aula, o estudo de matrizes é análogo
ao de vetores.
Definindo uma matriz
Com dois pares de colchetes, obtemos uma matriz de duas dimensões e, com cada par de
colchetes adicionais, obtemos matrizes com uma dimensão a mais.
Um bom exemplo para o uso de uma matriz é a geração de jogos para a loteria.
Veja o código a seguir:
Inicialização de matrizes de duas dimensões
Matrizes de duas dimensões são inicializadas da mesma forma que os vetores, isto é, os
elementos são colocados entre as chaves depois do sinal de igual e separados por vírgulas. Como
cada elemento de uma matriz de duas dimensões é por sua vez uma matriz, então, cada elemento
deve estar entre chaves e os elementos internos devem ser separados por vírgulas.
Veja o exemplo a seguir.
Matrizes como argumentos de funções
Até o momento vimos que quando uma função é chamada, devemos especificar quais variáveis
serão transferidas para a função. As matrizes também podem ser passadas como argumento para
uma função.
Veja o programa a seguir:
O método de passagem de endereço da matriz para a função consiste em informar no protótipo
o segundo elemento da matriz, ou seja, o elemento de colunas. Se esse elemento não for informado,
será impossível saber onde estão os valores.
Por que é feito dessa maneira?
As matrizes são consideradas um tipo de dado bastante grande, pois são formadas por diversas
variáveis. Por causa disso, em linguagem C, determina-se ser mais eficiente existir uma única cópia
da matriz na memória, sendo, portanto, irrelevante o número de funções que a acessam. Assim, não
são passados os valores contidos na matriz, somente o seu endereço de memória.
Vetores são passados da mesma forma? Não, mas de uma forma muito similar.
Veja o exemplo:
Como a função usa o endereço para acessar os elementos da matriz original, significa que as
alterações que a função efetuar nos elementos da matriz afetarão a matriz original.
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.

Outros materiais