JAVA - Matrizes

elainececiliagatto 19,349 views 23 slides Dec 03, 2013
Slide 1
Slide 1 of 23
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23

About This Presentation

JAVA - Matrizes


Slide Content

MATRIZES Linguagem de Programação II Ciência da Computação Prof.ª Ms. Elaine Cecília Gatto

Matrizes Variável composta homogênea multidimensional Conjunto de variáveis de mesmo tipo Alocadas sequenciamente na memória Índice : referencia sua localização dentro da estrutura. No caso de matrizes, precisamos de tantos índices quantos forem seu dimensionamento. Exemplo: matriz de 2dimensões, 2 índices. Matrizes de 3dimensões, 3 indícesl.

Declarando e Inicializando Exemplo 1: f loat x[ ][ ]; //declarando uma matriz do tipo float com duas dimensões. O primeiro colchete é referente ao número de linhas . O segundo colchete é referente ao número de colunas . f = new float[2][10]; //definindo o tamanho das dimensões da matriz 1 1 2 3 4 5 6 7 8 9 x

Declarando e Inicializando Exemplo 2: char [ ][ ]MAT; //declarando uma matriz do tipo char com duas dimensões; MAT = new char[4][3]; //definindo o tamanho das dimensões da matriz 1 1 2 2 3 MAT

Declarando e Inicializando Exemplo 3: i nt [ ][ ]Y[ ]; //declarando uma matriz do tipo int com três dimensões Y = new char[2][4][3]; //definindo o tamanho das dimensões da matriz, que é multidimensional Criamos aqui uma variável com duas linhas (0 a 1), quatro colunas (0 a 3) e três profundidades (0 a 2), que são capazes de armazenar números inteiros

Declarando e Inicializando Y = new char[2][4][3]; //definindo o tamanho das dimensões da matriz, que é multidimensional

Declarando e Inicializando Exemplo 4 : float x[ ][ ] = new float[2][6]; //declarando e definindo o tamanho da matriz em uma única linha Exemplo 5: char [ ][ ]MAT = new char[4][ 3 ]; // declarando e definindo o tamanho da matriz em uma única linha

Declarando e Inicializando Exemplo 6: int [ ][ ]Y[ ] = new int[2][4][ 3]; //eclarando e definindo o tamanho da matriz em uma única linha Exemplo 7: int y[][]; //matriz bidimensional y = new int[2][]; //tamanho da primeira dimensão: duas linhas. Tamanho da segunda dimensão: indefinido y [0] = new int[5]; //definindo o tamanho da linha zero da primeira dimensão: 5 posições y [1] = new int[2]; //definindo o tamanho da linha um da primeira dimensão: 2 posições

Declarando e Inicializando int y[][]; //matriz bidimensional y = new int[2][]; //tamanho da primeira dimensão: duas linhas. Tamanho da segunda dimensão: indefinido y [0] = new int[5]; //definindo o tamanho da linha zero da primeira dimensão: 5 posições y [1] = new int[2]; //definindo o tamanho da linha um da primeira dimensão: 2 posições

Atribuindo valores à matriz x[ 1 ][ 4 ] = 5; //atribui o valor 5 à posição identificada pelos índices 1 (2ª linha) e 4 (5ª coluna) MAT[ 3 ][ 2 ] = ‘D’; //atribui a letra D à posição identificada pelos índices 3 (4ª linha) e 2 (3ª coluna) y[ 0 ][ 3 ][ 1 ] = 12; //atribui o valor 12 à posição identificada pelos índices 0 (1ª linha), 3 (4ª coluna) e 1 (2ª profundidade)

Atribuindo valores à matriz y[ 0 ][ 3 ][ 1 ] = 12; //atribui o valor 12 à posição identificada pelos índices 0 (1ª linha), 3 (4ª coluna) e 1 (2ª profundidade)

Atribuindo valores à matriz MAT[ 3 ][ 2 ] = ‘D’; //atribui a letra D à posição identificada pelos índices 3 (4ª linha) e 2 (3ª coluna)

Preenchendo uma matriz Usar uma estrutura de repetição para cada linha da matriz ! int x[ ][ ] = new int[7][3]; Scanner e = new Scanner(System.in); f or( i = 0; i<7; i++ ) { //preenche a linha for( j=0; j<3; j++ ) { //preenche a coluna x[ i ][ j ] = e.nextInt(); //preenche a célula } }

Preenchendo uma matriz int MAT[ ][ ]; //declarando uma matriz bidimensional MAT = new int[ 3 ][ ] ; //definindo a quantidade de linhas da primeira dimensão MAT[ 0 ] = new int[ 2 ]; //defininido 2 como tamanho da linha zero MAT[ 1 ] = new int[ 5 ]; //definindo 5 como tamanho da linha um MAT[ 2 ] = new int[ 3 ]; //definindo 3 como tamanho da linha dois Scanner e = new Scanner(System.in); f or( i = 0; i<MAT. length ; i++ ) { //preenche a linha for( j=0; j<MAT[i]. length ; j++ ) { //preenche a coluna x[ i ][ j ] = e.nextInt(); //preenche a célula } }

Preenchendo uma matriz int MAT[ ][ ]; //declarando uma matriz bidimensional MAT = new int[ 3 ][ ] ; //definindo a quantidade de linhas da primeira dimensão MAT[ 0 ] = new int[ 2 ]; //defininido 2 como tamanho da linha zero MAT[ 1 ] = new int[ 5 ]; //definindo 5 como tamanho da linha um MAT[ 2 ] = new int[ 3 ]; //definindo 3 como tamanho da linha dois Scanner e = new Scanner(System.in); f or( i = 0; i< MAT.length ; i++ ) { //preenche a linha for( j=0; j< MAT[i].length ; j++ ) { //preenche a coluna x[ i ][ j ] = e.nextInt(); //preenche a célula } } LENGTH Recupera o tamanho de cada dimensão de um array. No caso desse exemplo, cada linha do array tem uma dimensão diferente! MAT.length = tamanho da primeira dimensão MAT[i].length = tamanho da linha i de MAT

Imprimindo os valores de uma matriz Usar uma estrutura de repetição para cada linha da matriz ! for( i=0; i<10 ; i++) { //obtem índice da linha for( j=0; j<6 ; j++) { //obtem índice da coluna System.out.println( x[ i ][ j ] ); //imprime o conteúdo da célula que está na linha/coluna obtida } }

Imprimindo os valores de uma matriz for( i=0; i< MAT.length ; i++) { //obtem o tamanho da dimensão for( j=0; j<MAT[ i ].length ; j++) { //obtem o tamanho da linha System.out.println( MAT[ i ][ j ] ); //imprime o conteudo da linha/coluna } }

Percorrendo uma matriz Usar uma estrutura de repetição para cada linha da matriz! EXEMPLO1: mostrar todos os elementos gravados em uma linha for ( i=0; i<3; i++) { //quantidade de linhas é 3 System.out.println( “Elementos da linha” + i ); for( j=0; j<4; j++) { //quantidade de colunas é 4 System.out.println( x[ i , j ] ); } }

Percorrendo uma matriz EXEMPLO1: mostrar todos os elementos gravados em uma coluna for ( i=0; i<4; i++) { //quantidade de colunas é 4 System.out.println( “Elementos da coluna” + i ); for( j=0; j<3; j++) { //quantidade de linhas é 4 System.out.println( x[ j , i ] ); } }

Percorrendo uma matriz Observações: A mudança nos valores das variáveis i e j, controlam as estruturas de repetição e permite a formação de todos os pares possíveis de linha e coluna que existem na matriz;

Percorrendo uma matriz Observações: No caso da linha : A mudança na variavel i do for externo é mais lenta que a mudança na variável j no for interno. Neste caso, a variável i indica como será o percurso, que no caso será horizontal. O índice da linha fica parado e somente o índice da coluna se altera

Percorrendo uma matriz Observações: No caso da coluna : A mudança na variavel j do for externo é mais lenta que a mudança na variável i no for interno. Neste caso, a variável j indica como será o percurso, que no caso será vertical. O índice da coluna fica parado e somente o índice da linha se altera

Percorrendo uma matriz Observações: No caso da coluna : A mudança na variavel j do for externo é mais lenta que a mudança na variável i no for interno. Neste caso, a variável j indica como será o percurso, que no caso será vertical. O índice da coluna fica parado e somente o índice da linha se altera