Estruturas/Variáveis Compostas Multidimensionais *MATRIZES*
-
Upload
dorian-chan -
Category
Documents
-
view
17 -
download
0
description
Transcript of Estruturas/Variáveis Compostas Multidimensionais *MATRIZES*
Estruturas/Variáveis Compostas Multidimensionais
*MATRIZES*PRD-MEC
Matriz
• Estrutura de 2 ou mais dimensões
• Uso de um índice para cada dimensão
• Requer mais de uma estrutura de repetição ( para leitura e escrita, vale a regra do número de dimensões)
Leitura de matriz bi A
INICIO
tipo M = matriz[1..4, 1..3] de inteiros
M: A;
PARA i de 1 até 4 passo 1 FAÇA
PARA j de 1 até 3 passo 1 FAÇA
Ler A[i, j];
FIM PARA
FIM PARA
FIM
PSEUDO CÓDIGO
Notação para estrutura de dados MATRIZ
Declaração da matriz
Escrita de matriz bi A
INICIO
.
.
.
PARA i de 1 passo 1 até 4 FAÇA
PARA j de 1 passo 1 até 3 FAÇA
Escrever A[i, j]
FIM PARA
FIM PARA
FIM
PSEUDO CÓDIGO
Matriz bidimensional
• 2 dimensões : 2 índices
-1 11 -2 0
7 0 5 8
3 2 1 14
4 X 3
4 linhas X
3 colunas
a11 a12 a13 a14
a21 a22 a23 a24
a31 a32 a33 a34
coluna
linha
Linha =2
Linha =3
Linha =1
Matriz bidimensional
-1 11 -2 0
7 0 5 8
3 2 1 14
• Soma de matriz bi• C = A + B ou seja C[i,j] = A[i,j] + B]i,j]• i: linha , j : coluna
B
1 1 2 3
2 3 4 6
1 1 4 10
A
Soma de matriz bi (C = A + B )
M: A, B, C;// complete com a leitura de A e B
PARA i de 1 passo 1 até linha FAÇA
PARA j de 1 passo 1 até coluna FAÇA
C[i, j] = A[i, j] + B[i,j]
FIM PARA
FIM PARA
Pseudocódigo
Produto de Matriz bi (quadrada)-1 11 -2
7 0 5
3 2 1
• Produto de matriz bi• Cada Pij é o somatório de (toda linha i em A X toda coluna j em B)p11 = a11. b11 + a12. b21 + a13. b31p12 = a11. b12 + a12.b22 + a13. b32P13 = a11. b13 + a12.b23 + a13. b33P21 = a21. b11 + a22.b21 + a23.b31P22 = a21. b12 + a22.b22 + a23.b32
p32 = a31.b12 + a32.b22 + a33.b23p33 = a31.b13 + a32.b23 + a33.b33
B
1 1 2
2 3 4
1 1 4
A
P11
P
Produto de Matriz BiPseudocódigo
InicioM: A, B, C;// complete com a leitura de A e B
PARA i de 1 passo 1 até dim FAÇA PARA j de 1 passo 1 até dim FAÇA P[i, j] <- 0; PARA k de 1 passo 1 até dim FAÇA P[i, j] = P[i, j] + (A[i, k] *B[k,j]); FIM PARA FIM PARA FIM PARA
FIM