В этой программе вы научитесь находить и распечатывать транспонирование заданной матрицы в Kotlin.
Транспонирование матрицы - это процесс замены строк столбцами. Для матрицы 2x3
Матрица a11 a12 a13 a21 a22 a23 Транспонированная матрица a11 a21 a12 a22 a13 a23
Пример: программа для поиска транспонирования матрицы
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() ) )
Когда вы запустите программу, вывод будет:
Матрица: 2 3 4 5 6 4 Матрица: 2 5 3 6 4 4
В приведенной выше программе display()
функция используется только для вывода содержимого матрицы на экран.
Здесь данная матрица имеет вид 2x3
, т.е. row = 2
и column = 3
.
Для транспонированной матрицы мы меняем порядок транспонирования 3x2
, т.е. row = 3
и column = 2
. Итак, у нас естьtranspose = int(column)(row)
Транспонирование матрицы вычисляется путем простой замены столбцов строками:
транспонировать (j) (i) = matrix (i) (j)
Вот эквивалентный код Java: Программа Java для поиска транспонирования матрицы