Implementando 4x4 Matriz Transposta em Linguagem C

Classified in Computers

Written on in English with a size of 2.66 KB

Implementação da Transposição de Matriz 4x4 em C

Este programa em C demonstra como calcular e exibir a matriz transposta (B) de uma matriz quadrada de ordem 4 (A). A transposição é realizada trocando as linhas pelas colunas, ou seja, o elemento na posição A[i][j] é copiado para B[j][i].

Código Fonte em C para Transposição de Matriz

O código utiliza as bibliotecas padrão stdio.h para entrada/saída e conio.h (comum em ambientes legados) para controle de console.

#include <stdio.h>
#include <conio.h>

int main()
{
    int i, j, A[4][4], B[4][4];

    // 1. Entrada de Dados
    printf("Insira os elementos da Matriz A (4x4):\n");
    for(i = 0; i < 4; i++)
    {
        for(j = 0; j < 4; j++)
        {
            printf("A[%d][%d]: ", i, j);
            scanf("%d", &A[i][j]);
        }
    }

    // 2. Cálculo da Transposta
    printf("\nCalculando a Transposta de A...\n");
    for(i = 0; i < 4; i++)
    {
        for(j = 0; j < 4; j++)
        {
            // A transposta inverte os índices: A[j][i] para B[i][j]
            B[i][j] = A[j][i]; 
        }
    }

    // 3. Exibição da Matriz Transposta B
    printf("\nMatriz Transposta B (4x4):\n");
    for(i = 0; i < 4; i++)
    {
        for(j = 0; j < 4; j++)
        {
            printf("%4d", B[i][j]); 
        }
        printf("\n"); // Nova linha após cada linha da matriz
    }

    getch();
    return 0;
"
  }

Detalhes da Lógica de Transposição

A operação fundamental para a transposição reside na atribuição dentro do segundo conjunto de laços aninhados:

B[i][j] = A[j][i];

Isso garante que o elemento da linha j e coluna i da matriz original A seja corretamente mapeado para a linha i e coluna j da matriz transposta B.

Estrutura e Fluxo do Programa

  • Declaração: Duas matrizes 4x4, A (original) e B (transposta), e contadores i e j são inicializados.
  • Entrada de Dados: Laços for aninhados solicitam e leem os 16 elementos da matriz A via scanf.
  • Processamento: Outros laços aninhados realizam a operação de transposição (B[i][j] = A[j][i]), armazenando o resultado em B.
  • Saída: A matriz B é impressa na tela, formatada com espaçamento e quebras de linha para garantir uma visualização clara da estrutura 4x4.

Related entries: