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

Kotlin程序来查找矩阵的转置

Coleção de Exemplos Kotlin

在此程序中,您将学习在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

Coleção de Exemplos Kotlin