Ejercicio: 2Eva_IIT2009_T2 Transponer una matriz
Se recorre toda la matriz intercambiando las posiciones de fila y columna. Lo mas sencillo es crear una nueva matriz de ceros con las dimensiones intercambiadas de la matriz inicial.
matriz = [[1,2,3],
[4,5,6]]
Al recorrer las casillas de la matriz inicial en cada posición [f,c], se copian los valores en cada [c,f] de la nueva matriz. El resultado debería presentarse como:
[[1. 4.]
[2. 5.]
[3. 6.]]
>>>
Algoritmo en Python
# 2Eva_IIT2009_T2 Transponer una matriz
import numpy as np
def transponer(matriz):
matriz = np.array(matriz)
tamano = np.shape(matriz)
n = tamano[0] # filas
m = tamano[1] # columnas
matrizT = np.zeros(shape=(m,n),dtype=float)
for i in range(0,n,1):
for j in range(0,m,1):
matrizT[j,i] = matriz[i,j]
return (matrizT)
# PROGRAMA EJEMPLO
# INICIO
matriz = [[1,2,3],
[4,5,6]]
# PROCEDIMIENTO
matrizT = transponer(matriz)
# SALIDA
print(matrizT)
Nota: En Numpy existe la instrucción np.transpose(matriz) que realiza la misma operación. En el ejercicio se evalúa su comprensión e implementación del algoritmo, no se considera que use las funciones de cada tópico de álgebra en Python.