English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在此程序中,您将学习在Kotlin中查找并打印给定矩阵的转置。
矩阵的转置是将行交换为列的过程。对于2x3矩阵,
Matrix a11 a12 a13 a21 a22 a23 Transposed Matrix 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(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(transpose) } fun display(matrix: Array) { println("矩阵: ") for (row in matrix) { for (column in row) { print("$column ") } println() } }
Quando o programa é executado, a saída é:
Matriz: 2 3 4 5 6 4 Matriz: 2 5 3 6 4 4
No programa acima, a função display() é usada para imprimir o conteúdo da matriz na tela.
Aqui, a forma da matriz dada é 2x3ou seja, row = 2 e column = 3
Para a matriz transposta, alteramos a ordem de transposição para3x2ou seja, row = 3 e column = 2Portanto, usamos transpose = int[column][row]
A transposta da matriz é calculada simplesmente trocando colunas por linhas:
transpose[j][i] = matrix[i][j]
Este é o código Java equivalente:Programa Java para Encontrar a Transposta de uma Matriz