:编写一个程序,输入两个矩阵输出矩阵乘的结果。JAVA
时间: 2024-10-22 22:29:31 浏览: 14
在Java中,你可以使用嵌套循环来实现矩阵相乘的操作。下面是一个简单的示例,展示如何创建一个函数来计算两个矩阵的乘积:
```java
public class MatrixMultiplication {
// 定义一个二维数组表示矩阵
static int[][] multiply(int[][] matrixA, int[][] matrixB) {
int rowsA = matrixA.length;
int colsA = matrixA[0].length;
int colsB = matrixB[0].length;
// 检查是否可以进行矩阵乘法(列数A等于行数B)
if (colsA != rowsB) {
throw new IllegalArgumentException("Matrix dimensions do not allow multiplication.");
}
int[][] result = new int[rowsA][colsB]; // 初始化结果矩阵
for (int i = 0; i < rowsA; i++) { // 遍历矩阵A的行
for (int j = 0; j < colsB; j++) { // 遍历矩阵B的列
for (int k = 0; k < colsA; k++) { // 遍历矩阵B的当前列
result[i][j] += matrixA[i][k] * matrixB[k][j]; // 矩阵元素相乘并累加到结果矩阵对应位置
}
}
}
return result;
}
public static void main(String[] args) {
int[][] matrixA = {{1, 2}, {3, 4}};
int[][] matrixB = {{5, 6}, {7, 8}};
try {
int[][] product = multiply(matrixA, matrixB);
for (int[] row : product) {
System.out.println(Arrays.toString(row));
}
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
}
```
当你运行这个程序,它会接受两个二维数组作为输入,然后返回它们的乘积矩阵。如果矩阵维度不符合乘法规则,它还会抛出异常。
阅读全文