2. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Obje%vos
§ Conceituação de Vetores Bidimensionais
§ Manipulação de Vetores Bidimensionais
§ Entender a diferença entre uso dos diferentes
vetores
§ Entender como manipular entrada, saída e
índices de vetores bidimensionais
§ Saber solucionar problemas de indexação de
matrizes bidimensionais
3. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
RECORDANDO ....
§ VETOR (array) é uma variável do tipo CONJUNTO, ou seja,
pode armazenar mais de um valor.
§ Um vetor possui VÁRIAS posições
§ Declaração:
float nota [ ] = new float [ 10 ];
§ A declaração acima cria em memória uma variável
com 10 posições do tipo float
§ As 10 posições são automaticamente numeradas de 0 a 9
(índice);
Vetores (array)
4. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
MATRIZES
² Matrizes são estruturas
MULTIDIMENSIONAIS (mais de uma
dimensão) capazes de armazenar dados
• A figura abaixo representa uma matriz
BIDIMENSIONAL de números inteiros
10 5 33 41
53 20 -10 0
29 17 30 8
5. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Matrizes Bidimensionais
Declaração de uma variável matriz
0 1 2 3
0 10 5 33 41
1 53 20 -10 0
2 29 17 30 8
• Tipo <nome_var> [ linhas ] [ colunas];
• Exemplo:
– int A [ ][ ] = new int [ 3 ] [ 4]; ç matriz A : 3 linhas e 4 colunas
6. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
§ Acesso a elementos da matriz
0 1 2 3
0 10 5 33 41
1 53 20 -10 0
2 29 17 30 8
• System.out.print( A [ 2 ] [ 1 ]); ç imprime o valor 17
A
• i = 0, j = 2;
• System.out.print ( A [ i ] [ j ] ); ç imprime o valor 33
• System.out.print ( A [ j ] [ i ] ); ç imprime o valor 29
7. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Matrizes Bidimensionais§ Para acessar TODOS os elementos da matriz é
necessário que os índices assuma todas as
combinações possíveis
0 1 2 3
0 10 5 33 41
1 53 20 -10 0
2 29 17 30 8
A
• (i, j)
• (0,0, (0,1) (0,2), (0, 3) ç i = 0 e j = 0, 1, 2, 3
• (1,0, (1,1) (1,2), (1, 3) ç i = 1 e j = 0, 1, 2, 3
• (2,0, (2,1) (2,2), (2, 3) ç i = 2 e j = 0, 1, 2, 3
8. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Matrizes no
Portugol Studio
9. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Matriz no Portugol Studio
§ Declarando uma Matriz de 3 linhas e 3 colunas
(vetor de duas dimensões)
§ Lê uma Matriz de duas dimensões
§ Imprime uma Matriz de duas dimensões
10. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Imprimindo
uma Matriz
11. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
§ Laços de repetição para i, j
0 1 2 3
0 10 5 33 41
1 53 20 -10 0
2 29 17 30 8
A
public class matriz01 {
static final int QLIN = 3;
static final int QCOL = 4;
public static void main(String[ ] args) {
int A [ ][ ], lin=0, col=0;
A = new int [QLIN][QCOL];
...
} lin = 0;
col = 0;
while (lin < QLIN ) {
while ( col < QCOL ) {
System.out.print(A [ lin ] [ col ] + );
col++ ; ç próxima coluna
}
lin++; ç próxima linha
col = 0; ç recomeça a coluna do zero
System.out.prinln(); ç pula de linha na tela
}
Este trecho
imprime todos
os elementos
da Matriz
12. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Exemplo : Soma de Matrizes
+ =
+ =
Escreva uma função chamada Soma_Matrizes para obter a
soma de duas matrizes , armazenando o resultado numa
terceira matriz
13. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Soma de Matrizes
14. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Solução
Soma de
Matrizes
15. Bacharelado em Ciência e Tecnologia
Processamento da Informação
Matrizes
Soma de Matrizes
+ =
+ =