Exercice langage C addition de deux matrices

a) Le résultat de l’addition sera mémorisé dans une troisième matrice C qui sera ensuite affichée.

#include <stdio.h>
main()
{
 /* Déclarations */
 int A[50][50]; /* matrice donnée   */
 int B[50][50]; /* matrice donnée   */
 int C[50][50]; /* matrice résultat */
 int N, M;      /* dimensions des matrices */
 int I, J;      /* indices courants */

 /* Saisie des données */
 printf("Nombre de lignes   (max.50) : ");
 scanf("%d", &N );
 printf("Nombre de colonnes (max.50) : ");
 scanf("%d", &M );
 printf("*** Matrice A ***\n");
 for (I=0; I<N; I++)
    for (J=0; J<M; J++)
        {
         printf("Elément[%d][%d] : ",I,J);
         scanf("%d", &A[I][J]);
        }
 printf("*** Matrice B ***\n");
 for (I=0; I<N; I++)
    for (J=0; J<M; J++)
        {
         printf("Elément[%d][%d] : ",I,J);
         scanf("%d", &B[I][J]);
        }
 /* Affichage des matrices */
 printf("Matrice donnée A :\n");
 for (I=0; I<N; I++)
    {
     for (J=0; J<M; J++)
          printf("%7d", A[I][J]);
     printf("\n");
    }
 printf("Matrice donnée B :\n");
 for (I=0; I<N; I++)
    {
     for (J=0; J<M; J++)
          printf("%7d", B[I][J]);
     printf("\n");
    }

 /* Affectation du résultat de l'addition à C */
 for (I=0; I<N; I++)
     for (J=0; J<M; J++)
           C[I][J] = A[I][J]+B[I][J];
  /* Edition du résultat */
 printf("Matrice résultat C :\n");
 for (I=0; I<N; I++)
    {
     for (J=0; J<M; J++)
          printf("%7d", C[I][J]);
     printf("\n");
    }
 return 0;

b) La matrice B est ajoutée à A.

#include <stdio.h>
main()
{
 /* Déclarations */
 int A[50][50]; /* matrice donnée et résultat */
 int B[50][50]; /* matrice donnée   */
 int N, M;      /* dimensions des matrices */
 int I, J;      /* indices courants */

 /* Saisie des données */
 printf("Nombre de lignes   (max.50) : ");
 scanf("%d", &N );
 printf("Nombre de colonnes (max.50) : ");
 scanf("%d", &M );
 printf("*** Matrice A ***\n");
 for (I=0; I<N; I++)
    for (J=0; J<M; J++)
        {
         printf("Elément[%d][%d] : ",I,J);
         scanf("%d", &A[I][J]);
        }
 printf("*** Matrice B ***\n");
 for (I=0; I<N; I++)
    for (J=0; J<M; J++)
        {
         printf("Elément[%d][%d] : ",I,J);
         scanf("%d", &B[I][J]);
        }
 /* Affichage des matrices */
 printf("Matrice donnée A :\n");
 for (I=0; I<N; I++)
    {
     for (J=0; J<M; J++)
          printf("%7d", A[I][J]);
     printf("\n");
    }

 printf("Matrice donnée B :\n");
 for (I=0; I<N; I++)
    {
     for (J=0; J<M; J++)
          printf("%7d", B[I][J]);
     printf("\n");
    }
 /* Addition de B à A */
 for (I=0; I<N; I++)
     for (J=0; J<M; J++)
          A[I][J] += B[I][J];
  /* Edition du résultat */
 printf("Matrice résultat A :\n");
 for (I=0; I<N; I++)
    {
     for (J=0; J<M; J++)
          printf("%7d", A[I][J]);
     printf("\n");
    }
 return 0;
}

Exercice langage C addition de deux matrices

Voici un exemple simple pour l’addition de deux matrices en langage C. Ce programme demande à l’utilisateur d’entrer les éléments de deux matrices de même dimension, puis il effectue l’addition et affiche la matrice résultante.

#include <stdio.h>

#define MAX 10

// Fonction pour entrer les éléments d’une matrice
void entrerMatrice(int matrice[MAX][MAX], int lignes, int colonnes) {
for (int i = 0; i < lignes; i++) {
for (int j = 0; j < colonnes; j++) {
printf(« Entrez l’élément de la matrice[%d][%d]: « , i + 1, j + 1);
scanf(« %d », &matrice[i][j]);
}
}
}

// Fonction pour afficher une matrice
void afficherMatrice(int matrice[MAX][MAX], int lignes, int colonnes) {
for (int i = 0; i < lignes; i++) {
for (int j = 0; j < colonnes; j++) {
printf(« %d « , matrice[i][j]);
}
printf(« \n »);
}
}

int main() {
int matrice1[MAX][MAX], matrice2[MAX][MAX], matriceResultat[MAX][MAX];
int lignes, colonnes;

// Demander la taille des matrices
printf(« Entrez le nombre de lignes: « );
scanf(« %d », &lignes);
printf(« Entrez le nombre de colonnes: « );
scanf(« %d », &colonnes);

// Entrer les deux matrices
printf(« \nEntrez les éléments de la première matrice:\n »);
entrerMatrice(matrice1, lignes, colonnes);

printf(« \nEntrez les éléments de la deuxième matrice:\n »);
entrerMatrice(matrice2, lignes, colonnes);

// Additionner les matrices
for (int i = 0; i < lignes; i++) {
for (int j = 0; j < colonnes; j++) {
matriceResultat[i][j] = matrice1[i][j] + matrice2[i][j];
}
}

// Afficher le résultat
printf(« \nMatrice résultante (addition des deux matrices):\n »);
afficherMatrice(matriceResultat, lignes, colonnes);

return 0;
}

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *