esta certo?
Faça um procedimento que recebe, por parâmetro, uma matriz A(8, 8) e calcula o maior elemento da sua diagonal principal. A seguir, o procedimento deve dividir todos os elementos de A pelo maior encontrado. O procedimento deve retornar a matriz alterada
Scannerinput=newScanner(System.in);floatmatriz[][]=newfloat[4][4],maior;for(inti=0;i<4;i++){// obtem os números para a matrizfor(intk=0;k<4;k++){System.out.println("Informe elemento para matriz:");matriz[i][k]=input.nextFloat();}}maior=matriz[0][0];// coloca o priemiro elemento da diagonal como// maiorfor(inti=1;i<4;i++){// percorre os outros elementos da diagonal// prinncipal e compara com o maiorif(matriz[i][i]>maior){maior=matriz[i][i];}}System.out.println("Maior elemento da diagonal principal: "+maior);System.out.println("Matriz original");for(inti=0;i<4;i++){for(intk=0;k<4;k++){System.out.print(matriz[i][k]+" ");}System.out.println(" ");}System.out.println(" ");System.out.println("Matriz modificada");for(inti=0;i<4;i++){for(intk=0;k<4;k++){System.out.print("\t"+(matriz[i][k]/maior)+" ");}System.out.println(" ");}
WendersonLP
publicstaticint[][]changeMatrix(int[][]matrix){intgreater=matrix[0][0];for(inti=0;i<matrix.length;i++){for(intj=0;j<matrix[i].length;j++){if(i==j){if(matrix[i][j]>greater){greater=matrix[i][j];}}}}System.out.println("Greater value of the main diagonal: "+greater);int[][]newMatrix=newint[matrix.length][matrix[0].length];try{for(inti=0;i<matrix.length;i++){for(intj=0;j<matrix[i].length;j++){newMatrix[i][j]=(matrix[i][j]/greater);}}}catch(ArithmeticExceptionarithmetic){}returnnewMatrix;}
Crio que seja essa função que você está querendo. Em relação a ArithmeticException não se preocupe é só para evitar
que caso haja uma divisão por zero, isso faz com que o programa não termine por conta disso.