V tomto programe sa naučíte nájsť a vytlačiť transpozíciu danej matice v Kotline.
Transpozícia matice je proces výmeny riadkov do stĺpcov. Pre maticu 2x3,
Matrix a11 a12 a13 a21 a22 a23 Transponovaná matica a11 a21 a12 a22 a13 a23
Príklad: Program na vyhľadanie transpozície matice
fun main(args: Array) ( val row = 2 val column = 3 val matrix = arrayOf(intArrayOf(2, 3, 4), intArrayOf(5, 6, 4)) // Display current matrix display(matrix) // Transpose the matrix val transpose = Array(column) ( IntArray(row) ) for (i in 0… row - 1) ( for (j in 0… column - 1) ( transpose(j)(i) = matrix(i)(j) ) ) // Display transposed matrix display(transpose) ) fun display(matrix: Array) ( println("The matrix is: ") for (row in matrix) ( for (column in row) ( print("$column ") ) println() ) )
Po spustení programu bude výstup:
Matica je: 2 3 4 5 6 4 Matica je: 2 5 3 6 4 4
Vo vyššie uvedenom programe sa display()
funkcia používa iba na tlač obsahu matice na obrazovku.
Tu má daná matica tvar 2x3
, tj row = 2
a column = 3
.
Pre transponovanú maticu zmeníme poradie transponovanej na 3x2
, tj row = 3
a column = 2
. Takže mámetranspose = int(column)(row)
Transpozícia matice sa počíta jednoduchým prehodením stĺpcov do riadkov:
transponovať (j) (i) = matica (i) (j)
Tu je ekvivalentný kód Java: Program Java na vyhľadanie transpozície matice