JAVA - Matrizes

2,593 views
2,307 views

Published on

JAVA - Matrizes

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,593
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
54
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

JAVA - Matrizes

  1. 1. MATRIZES Linguagem de Programação II Ciência da Computação Prof.ª Ms. Elaine Cecília Gatto
  2. 2. 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.
  3. 3. Declarando e Inicializando • Exemplo 1: float 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 0 0 1 1 2 3 4 5 6 7 8 9 x
  4. 4. 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 0 0 1 2 3 1 2 MAT
  5. 5. Declarando e Inicializando • Exemplo 3: int [ ][ ]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
  6. 6. Declarando e Inicializando Y = new char[2][4][3]; //definindo o tamanho das dimensões da matriz, que é multidimensional
  7. 7. 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
  8. 8. 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
  9. 9. 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
  10. 10. 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)
  11. 11. 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)
  12. 12. Atribuindo valores à matriz MAT[ 3 ][ 2 ] = ‘D’; //atribui a letra D à posição identificada pelos índices 3 (4ª linha) e 2 (3ª coluna)
  13. 13. 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); for( 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 } }
  14. 14. 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); for( 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 } }
  15. 15. Preenchendo uma matriz int MAT[ ][ ]; //declarando uma matriz bidimensional MAT = new int[ 3 ][ ] ; //definindo a quantidade de linhas da LENGTH primeira dimensão MAT[ 0 ] = new int[ 2 ]; //defininido 2 como tamanhotamanho zero cada Recupera o da linha de dimensão de um array. No MAT[ 1 ] = new int[ 5 ]; //definindo 5 como tamanho da linha um caso desse exemplo, cada linha MAT[ 2 ] = new int[ 3 ]; //definindo 3 como tamanho da linha dois do array tem uma dimensão Scanner e = new Scanner(System.in); diferente! for( i = 0; i<MAT.length; i++ ) { //preenche a linha MAT.length = tamanho da for( j=0; j<MAT[i].length; j++ ) { //preenche a coluna primeira dimensão x[ i ][ j ] = e.nextInt(); //preenche a célula MAT[i].length = tamanho da } linha i de MAT }
  16. 16. 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 } }
  17. 17. 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 } }
  18. 18. 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 ] ); } }
  19. 19. 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 ] ); } }
  20. 20. 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;
  21. 21. 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
  22. 22. 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
  23. 23. 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

×