Matrizes em C
Yuri Tavares dos Passos
Gabriel de Carvalho Arimatéa
Fernando Melo Nascimento
Matrizes em C
● Em qualquer linguagem de programação, uma
matriz é uma estrutura de armazenamento de
dados com indexação bidimensional.
● A primeira dimensão corresponde a linha da
matriz e a segunda dimensão a coluna.
● Assim como na Matemática, matrizes podem
ser representadas graficamente como nos
exemplos a seguir:
Matrizes em C
● Em C, a declaração de uma matriz é feita de modo
análogo ao vetor, mas com o uso de uma dimensão
extra:
– int A[3][3];
– float B[3][2];
● Em C, a utilização de matriz é feita elemento a
elemento. Para acessar cada elemento deve-se indexá-
lo pela linha e pela coluna:
– A[0][0] = 2;
– A[0][1] = 3;
– B[2][0] = 1.1;
– B[1][1] = 7.1;
Matrizes em C
● Para inicializar uma matriz o processo é
semelhante ao de vetores, mas deve-se
considerar que cada linha da matriz é um
vetor individual.
● Exemplo:
– int A[3][3] = {{2,3,7},{9,1,-1},{0,0,1}};
– float B[3][2] = {{2,7},{4.01,7.1},{1.1,0.01}};
Exemplo 1
● Escreva um algoritmo que leia uma matriz
de 5 linhas por 10 colunas de números
reais via teclado. Em seguida, escreva
esta matriz na tela.
Exemplo 1
Exemplo 2
● Escreva um algoritmo que extraia a
diagonal principal de uma matriz NxN,
quadrada, com N elementos e seus
elementos lidos pelo usuário. Salve os
valores da diagonal em um vetor e escreva
seus valores na tela.
Exemplo 2
Exemplo 3
● Escreva um algoritmo que leia duas
matrizes. A matriz A tem tamanho MxN e a
matriz B é LxC. Faça um algoritmo que:
– Teste se é possível realizar a multiplicação de
A por B. Isto só é possível se N=L.
– Se elas podem ser multiplicadas, crie uma
matriz C resultante desta multiplicação, onde:
Ci , j= ∑
K=1
N
aiK bKj
Exemplo 3
Exemplo 3 (cont.)
Exemplo 4
● Escreva um algoritmo que leia uma matriz
MxN e armazene seus elementos em um
vetor. Leia os elementos da matriz linha
por linha. Exemplo:
A=
[
1 2 3
4 5 6
7 8 9] V =
[
1
2
3
4
5
6
7
8
9
]
Exemplo 4
Exemplo 5
● Escreva um algoritmo que leia um vetor de
tamanho MN e escreva seus elementos
em uma matriz de tamanho MxN.
– Ao invés de ler a matriz e escrever o vetor,
deve-se ler o vetor e escrever a matriz
Exemplo 5
Exemplo 5 (cont.)
Exercício
● Escreva um algoritmo que leia a
quantidade de linhas e colunas de uma
matriz, leia a posição i e j de um elemento
qualquer desta matriz e indique qual a
posição K do vetor da questão 3 este
elemento se encontraria. Não crie nenhum
vetor ou matriz neste programa.

Aula06 matriz em C

  • 1.
    Matrizes em C YuriTavares dos Passos Gabriel de Carvalho Arimatéa Fernando Melo Nascimento
  • 2.
    Matrizes em C ●Em qualquer linguagem de programação, uma matriz é uma estrutura de armazenamento de dados com indexação bidimensional. ● A primeira dimensão corresponde a linha da matriz e a segunda dimensão a coluna. ● Assim como na Matemática, matrizes podem ser representadas graficamente como nos exemplos a seguir:
  • 3.
    Matrizes em C ●Em C, a declaração de uma matriz é feita de modo análogo ao vetor, mas com o uso de uma dimensão extra: – int A[3][3]; – float B[3][2]; ● Em C, a utilização de matriz é feita elemento a elemento. Para acessar cada elemento deve-se indexá- lo pela linha e pela coluna: – A[0][0] = 2; – A[0][1] = 3; – B[2][0] = 1.1; – B[1][1] = 7.1;
  • 4.
    Matrizes em C ●Para inicializar uma matriz o processo é semelhante ao de vetores, mas deve-se considerar que cada linha da matriz é um vetor individual. ● Exemplo: – int A[3][3] = {{2,3,7},{9,1,-1},{0,0,1}}; – float B[3][2] = {{2,7},{4.01,7.1},{1.1,0.01}};
  • 5.
    Exemplo 1 ● Escrevaum algoritmo que leia uma matriz de 5 linhas por 10 colunas de números reais via teclado. Em seguida, escreva esta matriz na tela.
  • 6.
  • 7.
    Exemplo 2 ● Escrevaum algoritmo que extraia a diagonal principal de uma matriz NxN, quadrada, com N elementos e seus elementos lidos pelo usuário. Salve os valores da diagonal em um vetor e escreva seus valores na tela.
  • 8.
  • 9.
    Exemplo 3 ● Escrevaum algoritmo que leia duas matrizes. A matriz A tem tamanho MxN e a matriz B é LxC. Faça um algoritmo que: – Teste se é possível realizar a multiplicação de A por B. Isto só é possível se N=L. – Se elas podem ser multiplicadas, crie uma matriz C resultante desta multiplicação, onde: Ci , j= ∑ K=1 N aiK bKj
  • 10.
  • 11.
  • 12.
    Exemplo 4 ● Escrevaum algoritmo que leia uma matriz MxN e armazene seus elementos em um vetor. Leia os elementos da matriz linha por linha. Exemplo: A= [ 1 2 3 4 5 6 7 8 9] V = [ 1 2 3 4 5 6 7 8 9 ]
  • 13.
  • 14.
    Exemplo 5 ● Escrevaum algoritmo que leia um vetor de tamanho MN e escreva seus elementos em uma matriz de tamanho MxN. – Ao invés de ler a matriz e escrever o vetor, deve-se ler o vetor e escrever a matriz
  • 15.
  • 16.
  • 17.
    Exercício ● Escreva umalgoritmo que leia a quantidade de linhas e colunas de uma matriz, leia a posição i e j de um elemento qualquer desta matriz e indique qual a posição K do vetor da questão 3 este elemento se encontraria. Não crie nenhum vetor ou matriz neste programa.