java实现关系矩阵A和B的乘积(附完整源码)
时间: 2023-12-20 17:09:24 浏览: 97
矩阵A和矩阵B相乘程序
下面是Java实现关系矩阵A和B的乘积的完整源码:
```java
public class MatrixMultiplication {
public static void main(String[] args) {
int[][] A = {{1, 2}, {3, 4}};
int[][] B = {{5, 6}, {7, 8}};
int rowsA = A.length;
int colsA = A[0].length;
int rowsB = B.length;
int colsB = B[0].length;
if (colsA != rowsB) {
System.out.println("Error: Invalid matrix dimensions.");
return;
}
int[][] C = new int[rowsA][colsB];
for (int i = 0; i < rowsA; i++) {
for (int j = 0; j < colsB; j++) {
for (int k = 0; k < colsA; k++) {
C[i][j] += A[i][k] * B[k][j];
}
}
}
System.out.println("Matrix A:");
printMatrix(A);
System.out.println("Matrix B:");
printMatrix(B);
System.out.println("Matrix C (A * B):");
printMatrix(C);
}
public static void printMatrix(int[][] matrix) {
for (int[] row : matrix) {
for (int elem : row) {
System.out.print(elem + " ");
}
System.out.println();
}
}
}
```
该程序首先定义了两个关系矩阵A和B,然后计算了它们的行数和列数。接着,它检查A和B的列数是否相等,如果不相等,则输出错误信息并退出程序。如果列数相等,则创建一个新的矩阵C来存储乘积结果。然后,通过三重嵌套的for循环,计算出C的每个元素,即A的一行乘以B的一列。最后,程序打印出矩阵A、B和C。
该程序的输出如下所示:
```
Matrix A:
1 2
3 4
Matrix B:
5 6
7 8
Matrix C (A * B):
19 22
43 50
```
阅读全文