English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In this program, you will learn how to multiply two matrices using functions in Java.
To perform matrix multiplication, the number of columns in the first matrix must be equal to the number of rows in the second matrix. In our example, that is
c1 =2
The size of the final product matrix is r1 x c2, that is
product[r1][c2]
You can alsoMultiply two matrices without functions.
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}; //Two matrices are multiplied int[][] product = multiplyMatrices(firstMatrix, secondMatrix, r1, c1, c2); // Display the result displayProduct(product); } public static int[][] multiplyMatrices(int[][] firstMatrix, int[][] secondMatrix, int r1, int c1, int c2) { int[][] product = new int[r1][c2]; for (int i = 0; i < r1; i++) { for (int j = 0; j < c2; j++) { for (int k = 0; k < c1; k++) { product[i][j] += firstMatrix[i][k] * secondMatrix[k][j]; } } } return product; } public static void displayProduct(int[][] product) { System.out.println("The product of two matrices is: "); for(int[] row : product) { for (int column : row) { System.out.print(column + " "); } System.out.println(); } } }
When the program is run, the output is:
The product of two matrices is: 24 29 6 25
In the above program, there are two functions:
multiplyMatrices() - Multiply two given matrices and return the product matrix
displayProduct() - Display the output of the product matrix on the screen.
The multiplication occurs as follows:
|- (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) _|
In our example, it occurs as follows:
|- (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 _|