【发布时间】:2019-05-11 17:29:16
【问题描述】:
我试图对两个矩阵进行求和、减法和乘法运算,求和法和减法运算正确,但是在进行乘法运算时,打印结果为 0。很抱歉西班牙语变量,我必须用西班牙语交付我的学校作业。
package Segundo_Parcial;
import java.util.Scanner;
public class matriz {
private Scanner teclado;
private int[][] matriz1;
private int[][] matriz2;
private int[][] suma;
private int[][] resta;
private int[][] multi;
private float[][] divi;
public void Datos() {
teclado = new Scanner(System.in);
matriz1 = new int[5][5];
matriz2 = new int[5][5];
suma = new int[5][5];
resta = new int[5][5];
multi = new int[5][5];
divi = new float[5][5];
System.out.println(" [ Matriz 1 ] ");
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println("Ingresa los numeros en la posicion [" + i + "][" + j + "] :");
matriz1[i][j] = teclado.nextInt();
}
}
System.out.println(" [ Matriz 2 ] ");
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println("Ingresa los numeros en la posicion [" + i + "][" + j + "] :");
matriz2[i][j] = teclado.nextInt();
}
}
}
public void sumaYresta() {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
suma[i][j] = matriz1[i][j] + matriz2[i][j];
}
}
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
resta[i][j] = matriz1[i][j] - matriz2[i][j];
}
}
}
public void Multiplicacion(){
int x=0, jd=0, id=0,i=0,j=0, resul=0;
for(i=0;i<5;){
for(j=0;j<5;){
for(jd=0;jd<5;jd++){
resul = matriz1[i][jd] * matriz2[jd][j];
resul+=resul;
if(jd==4){
for(int c=0;c<5;c++){
for(int c2=0;c2<5;c2++){
multi[c][c2]= resul;
resul=0;
}
}
j++;
if(j==4){
i++;
}
}
}
}
}
}
public void Imprimir() {
System.out.println(" [ RESULDATO DE LA SUMA ] ");
for (int c = 0; c < 5; c++) {
for (int c2 = 0; c2 < 5; c2++) {
System.out.print("[" + multi[c][c2] + "]");
}
System.out.println("");
}
//
// System.out.println(" [ RESULDATO DE LA RESTA ] ");
// for (int i = 0; i < 5; i++) {
// for (int j = 0; j < 5; j++) {
// System.out.print("[" + resta[i][j] + "]");
// }
// System.out.println("");
//
// }
}
public static void main(String[] args) {
matriz matri = new matriz();
matri.Datos();
matri.sumaYresta();
matri.Imprimir();
}
}
它应该打印相应的结果,但它打印的是“0” 我不确定我的代码的哪一部分失败了。有人有想法吗? 谢谢:)
【问题讨论】:
标签: java matrix matrix-multiplication