Exercícios de Matrizes em Linguagem C: Guia Prático

Classificado em Matemática

Escrito em em português com um tamanho de 3,08 KB

Exercícios Práticos com Matrizes em Linguagem C

1. Agrupamento e Transferência de Dados entre Matrizes

Este programa demonstra como processar uma matriz de dados e transferir somatórios para uma segunda matriz baseada em identificadores de região.

#include <stdio.h>

int main() {
    int a[64][4];
    int b[3][15], i, regiao, sumasup = 0, sumahab = 0, j = 0;
    regiao = 1;

    for (i = 0; i < 64; i++) {
        if (a[i][0] == regiao) {
            sumasup += a[i][2];
            sumahab += a[i][3];
        }
        if (a[i + 1][0] != regiao) {
            b[0][j] = regiao;
            b[1][j] = sumasup;
            b[2][j] = sumahab;
            j++;
            sumasup = 0;
            sumahab = 0;
            regiao++;
        }
    }
    
    if (a[i][0] == regiao) {
        sumasup += a[i][2];
        sumahab += a[i][3];
    }
    return 0;
}

2. Operações Aritméticas em Matriz 3x3 por Posição

O programa abaixo solicita ao usuário 9 números para preencher uma matriz 3x3. O cálculo final baseia-se na paridade da soma dos índices (i + j):

  • Posição Par: O número é somado ao resultado.
  • Posição Ímpar: O número é subtraído do resultado.
  • O índice 0 é considerado par.
#include <stdio.h>
#include <conio.h>
#define F 3
#define C 3

int main() {
    int a[F][C];
    int num, resultado = 0, i, j;

    for (i = 0; i < F; i++) {
        for (j = 0; j < C; j++) {
            printf("Digite o número: ");
            scanf("%d", &num);
            a[i][j] = num;

            if ((i + j) % 2 == 0) {
                resultado += num;
            } else {
                resultado -= num;
            }
        }
    }

    printf("O resultado final é: %d", resultado);
    getch();
    return 0;
}

3. Cálculos de Somas em Matriz 4x4

Este programa solicita 16 números para uma matriz 4x4 e realiza o cálculo de quatro somas distintas:

  • A. Diagonal principal.
  • B. Diagonal secundária.
  • C. Primeira e última linha.
  • D. Primeira e última coluna.
#include <stdio.h>
#include <stdlib.h>

int main() {
    int MATR[4][4], suma_dp = 0, suma_ds = 0, suma_pu_f = 0, suma_pu_c = 0;

    for (int i = 0; i < 4; i++) {
        for (int j = 0; j < 4; j++) {
            printf("Digite o número [%i][%i]: ", i, j);
            scanf("%i", &MATR[i][j]);
        }
    }

    for (int l = 0; l < 4; l++) {
        suma_dp += MATR[l][l];
        suma_ds += MATR[l][3 - l];
        suma_pu_f += MATR[0][l] + MATR[3][l];
        suma_pu_c += MATR[l][0] + MATR[l][3];
    }

    printf("\nA soma da diagonal principal: %i", suma_dp);
    printf("\nA soma da diagonal secundária: %i", suma_ds);
    printf("\nA soma da primeira e última linha: %i", suma_pu_f);
    printf("\nA soma da primeira e última coluna: %i", suma_pu_c);

    system("pause");
    return 0;
}

Entradas relacionadas: