Seja muito bem vindo à aula 123 do nosso curso gratuito de programação com a linguagem C.
Hoje, no exercício 13, vamos fazer um programa para calcular a transposta de uma matriz 5 x 4 com a linguagem C.
13) Faça um programa para calcular a transposta de uma matriz 5 x 4. Imprima as duas matrizes na tela.
A transposta de uma matriz A, conhecida como A`, é uma matriz onde cada uma de suas colunas é formada por uma linha da matriz original A. Assim, a linha zero da matriz A formará a coluna zero da matriz A`, a linha um formará a coluna um, e assim por diante.
Matriz A
45 78 41
51 59 24
17 24 19
34 39 83
Matriz transposta A`
45 51 17 34
78 59 24 39
41 24 19 83
#include <stdio.h> #include <stdlib.h> int main() { int tamL = 5, tamC = 4; int l, c, mat[tamL][tamC], trans[tamC][tamL]; srand(time(NULL)); for(l = 0; l < tamL; l++){ for(c = 0; c < tamC; c++){ mat[l][c] = rand() % 500; } } printf("\nMatriz original:\n"); for(l = 0; l < tamL; l++){ for(c = 0; c < tamC; c++){ printf("%3d ", mat[l][c]); } printf("\n"); } for(l = 0; l < tamL; l++){ for(c = 0; c < tamC; c++){ trans[c][l] = mat[l][c]; } } printf("\nMatriz transposta:\n"); for(l = 0; l < tamC; l++){ for(c = 0; c < tamL; c++){ printf("%3d ", trans[l][c]); } printf("\n"); } return 0; }