Programação Imperativa

100 Questões Fichas Testes/Exames

Questão 40: transposta

Voltar

Defina uma função void transposta (int N, float m[N][N]) que transforma uma matriz na sua transposta.

Exemplo

> float m[3][3] = {
?    {1, 2, 3},
?    {4, 5, 6}
?    };
> transposta(3, m);
> m
(float [3][3]) { {1, 4}, {2, 5}, {3, 6} }

Resolução

void transposta (int N, float m[N][N]) {
    int i, j;
    float temp;
    for(i = 0; i < N; i++) {
        for(j = 0; j < i; j++) {
            temp = m[i][j];
            m[i][j] = m[j][i];
            m[j][i] = temp;
        }
    }
}