importjava.util.Scanner;publicclassMatriz{privateintm;privateintn;privateinti;privateintj;privateinta[][];privateintb[][];privateintresult[][];publicMatriz(intl,intc){m=l;n=c;a=newint[m][n];b=newint[m][n];result=newint[i][j];}publicvoidlerMatrizA(){Scannerinput=newScanner(System.in);for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.println("Digite o elemento da linha ["+(i+1)+"] da coluna ["+(j+1)+"]: ");a[i][j]=input.nextInt();System.out.println("");}}}publicvoidlerMatrizB(){Scannerinput=newScanner(System.in);for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.println("Digite o elemento da linha ["+(i+1)+"] da coluna ["+(j+1)+"]: ");b[i][j]=input.nextInt();System.out.println("");}}}publicvoidexibirMatrizA(){for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.print(a[i][j]+" ");}System.out.println("\n");}}publicvoidexibirMatrizB(){for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.print(b[i][j]+" ");}System.out.println("\n");}}publicvoidsomar(Matrizmatriz1,Matrizmatriz2){for(inti=0;i<m;i++){for(intj=0;j<n;j++){result[i][j]=matriz1+matriz2;System.out.print(result[i][j]+"\t");}System.out.print("\n");}}}
Att
Max
J
Jothar_Aleksander
@FacaNaCaveira, tens certeza que esse código roda? Como as matrizes sabem como se somarem? Como somar dois objetos?
Veja:
Elas não sabem se somar. Não se pode somar dois objetos (como se fossem números).
F
FacaNaCaveira1 like
Fala ai @Jothar_Aleksander, so fiz a postagem do conteúdo do arquivo que o @LSagasan passou em arquivo anexado no forum. Para os demais companheiros do forum poderem dar uma solução. ja tinha visto que não rodava.
Att
Max
J
Jothar_Aleksander
Eu só quero saber se tu testou o código. Você criou uma classe Matriz, então ela deve poder saber como realizar as suas operações.
J
Solucao aceita
Jothar_Aleksander
Contribuindo…
Alterações e teste do código postado pelo @FacaNaCaveira.
Método soma sem parâmetros:
importjava.util.Scanner;publicclassMatriz{privateintm;privateintn;privateinti;privateintj;privateinta[][];privateintb[][];privateintresult[][];publicMatriz(intl,intc){m=l;n=c;a=newint[m][n];b=newint[m][n];result=newint[m][n];}publicvoidlerMatrizA(){intl=0;intc=0;Scannerinput=newScanner(System.in);for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.print("Digite o elemento da linha ["+(l++)+"] da coluna ["+(c++)+"]: ");a[i][j]=input.nextInt();System.out.println("");}}}publicvoidlerMatrizB(){intl=0;intc=0;Scannerinput=newScanner(System.in);for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.print("Digite o elemento da linha ["+(l++)+"] da coluna ["+(c++)+"]: ");b[i][j]=input.nextInt();System.out.println("");}}}publicvoidexibirMatrizA(){System.out.println("Matriz A\n");for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.print(a[i][j]+" ");}System.out.println("");}}publicvoidexibirMatrizB(){System.out.println("\nMatriz B\n");for(inti=0;i<m;i++){for(intj=0;j<n;j++){System.out.print(b[i][j]+" ");}System.out.println("");}}publicvoidsomar(){System.out.println("\n\nSoma A + B\n");for(inti=0;i<m;i++){for(intj=0;j<n;j++){result[i][j]=a[i][j]+b[i][j];System.out.printf("%03d",result[i][j]);System.out.print(" ");}System.out.println("");}}}publicclassPrincipal{publicstaticvoidmain(String[]args){Matrizmatriz=newMatriz(2,2);matriz.lerMatrizA();matriz.lerMatrizB();matriz.exibirMatrizA();matriz.exibirMatrizB();matriz.somar();}}