English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En este programa, aprenderás a multiplicar dos matrices utilizando matrices multidimensionales en Java.
Para realizar la multiplicación de matrices, el número de columnas de la primera matriz debe ser igual al número de filas de la segunda matriz. En nuestro ejemplo, es decir
c1 =2
El tamaño final de la matriz de producto es r1 x c2es decir
product[r1][c2]
También puedes使用函数将两个矩阵相乘。
public class MultiplyMatrices { public static void main(String[] args) { int r1 = 2, c1 = 3; int r2 = 3, c2 = 2; int[][] firstMatrix = { {3, -2, 5}, {3, 0, 4};}; int[][] secondMatrix = { {2, 3}, {-9, 0}, {0, 4};}; // multiplicación de dos matrices int[][] product = new int[r1][c2]; for(int i = 0; i < r1; i++) { por (int j = 0; j < c2; j}}++) { for (int k = 0; k < c1; k++) { product[i][j] += firstMatrix[i][k] * secondMatrix[k][j]; } } } //显示结果 System.out.println("两个矩阵的总和为: "); for (int[] row : product) { for (int column : row) { System.out.print(column + " "); } System.out.println(); } } }
运行该程序时,输出为:
两个矩阵的总和为: 24 29 6 25
在上面的程序中,乘法发生为:
|- (a11 x b11) + (a12 x b21) + (a13 x b31) (a11 x b12) + (a12 x b22) + (a13 x b32) -| |_ (a21 x b11) + (a22 x b21) + (a23 x b31) (a21 x b12) + (a22 x b22) + (a23 x b32) _|
在我们的示例中,它发生为:
|- (3 x 2) + (-2 x -9) + (5 x 0) = 24 (3 x 3) + (-2 x 0) + (5 x 4) = 29 -| |_ (3 x 2) + ( 0 x -9) + (4 x 0) = 6 (3 x 3) + ( 0 x 0 ) + (4 x 4) = 25 _|