矩阵乘法
先点赞,后观看,养成好习惯!
import java.util.Scanner;
public class text11 {
//矩阵相乘的方法
public static void multiplyMatrix(int matrix1[][],int matrix2[][]) {
//矩阵相乘的条件:前一矩阵的列数等于后一矩阵的行数
if (matrix1.length != matrix2[0].length)
System.out.println("输入的矩阵不符合矩阵相乘条件!");
int line_length = matrix1.length;
int list_length = matrix2[0].length;
int[][] multiply = new int[line_length][list_length];
//相乘
for (int i = 0; i < line_length; i++) {
for (int j = 0; j < list_length; j++) {
for (int k = 0; k < matrix2.length; k++) {
multiply[i][j] += matrix1[j][k] + matrix2[k][j];
}
}
}
//输出相乘的结果
for (int i = 0; i < line_length; i++) {
for (int j = 0; j < list_length; j++) {
System.out.print(multiply[i][j] + " ");
}
System.out.print("\n");
}
}
//程序入口
public static void main(String[] args) {
//输入矩阵的维度
Scanner in = new Scanner(System.in);
System.out.println("矩阵的维度为:\n" + "矩阵一:\n" + "行:");
int line_1_length = in.nextInt();
System.out.println("列:");
int list_1_length = in.nextInt();
System.out.println("矩阵二:\n" + "行:");
int line_2_length = in.nextInt();
System.out.println("列:");
int list_2_length = in.nextInt();
int[][] a = new int[line_1_length][list_1_length];
int[][] b = new int[line_2_length][list_2_length];
System.out.println("请输入矩阵:" + "\n矩阵一:");
for (int i = 0; i < line_1_length; i++) {
for (int j = 0; j < list_1_length; j++) {
a[i][j] = in.nextInt();
}
}
System.out.println("矩阵二:\n");
for (int i = 0; i < line_2_length; i++) {
for (int j = 0; j < list_2_length; j++) {
b[i][j] = in.nextInt();
}
}
multiplyMatrix(a,b);
}
}
以上…
觉得有帮助的话,记得点赞、收藏、
加关注o
!