Aula06 matriz em C
-
Upload
yuri-passos -
Category
Science
-
view
64 -
download
0
Transcript of Aula06 matriz em C
![Page 1: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/1.jpg)
Matrizes em C
Yuri Tavares dos PassosGabriel de Carvalho ArimatéaFernando Melo Nascimento
![Page 2: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/2.jpg)
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:
![Page 3: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/3.jpg)
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;
![Page 4: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/4.jpg)
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}};
![Page 5: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/5.jpg)
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.
![Page 6: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/6.jpg)
Exemplo 1
![Page 7: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/7.jpg)
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.
![Page 8: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/8.jpg)
Exemplo 2
![Page 9: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/9.jpg)
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:
C i , j=∑K=1
N
aiKbKj
![Page 10: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/10.jpg)
Exemplo 3
![Page 11: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/11.jpg)
Exemplo 3 (cont.)
![Page 12: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/12.jpg)
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 34 5 67 8 9 ] V=[
123456789
]
![Page 13: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/13.jpg)
Exemplo 4
![Page 14: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/14.jpg)
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
![Page 15: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/15.jpg)
Exemplo 5
![Page 16: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/16.jpg)
Exemplo 5 (cont.)
![Page 17: Aula06 matriz em C](https://reader036.fdocumentos.tips/reader036/viewer/2022081800/55bddb58bb61ebf9778b47f1/html5/thumbnails/17.jpg)
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.