English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Kotlin program uses multi-dimensional arrays to multiply matrices

Comprehensive Collection of Kotlin Examples

In this program, you will learn how to multiply two matrices using multi-dimensional arrays in Kotlin.

In order 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 = r2

Therefore, the size of the final matrix product is r1 x c2,即

product[r1][c2]

You can alsoMultiplying Two Matrices Using a Function.

Example: Program to multiply two matrices

fun main(args: Array<String>) {
    val r1 = 2
    val c1 = 3
    val r2 = 3
    val c2 = 2
    val firstMatrix = arrayOf(intArrayOf(3, -2, 5), intArrayOf(3, 0, 4))
    val secondMatrix = arrayOf(intArrayOf(2, 3), intArrayOf(-9, 0), intArrayOf(0, 4))
    //Multiplying two matrices
    val product = Array(r1) { IntArray(c2) }
    for (i in 0..r1 - 1) {
        for (j in 0..c2 - 1) {
            for (k in 0..c1 - 1) {
                product[i][j] += firstMatrix[i][k] * secondMatrix[k][j]
            }
        }
    }
    //Display the result
    println("The product of two matrices is:")
    for (row in product) {
        for (column in row) {
            print("$column    ")
        }
        println()
    }
}

The output when running the program is:

The product of the two matrices is:
24    29    
6    25

In the above program, 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    _|

This is the equivalent Java code:Java Program to Multiply Two Matrices

Comprehensive Collection of Kotlin Examples