1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
| #include <stdio.h>
#include <time.h>
//Procédure pour remplir les elements du matrice
void lire(int A[4][4],int B[4][4]);
//procédure calcule le produit des deux matrices
void calculer(int A[4][4],int B[4][4],int AB[4][4]);
//procédure pour afficher les résultats de calcul
void afficher(int A[4][4],int B[4][4],int AB[4][4]);
int main()
{
//Déclaration des matrices
int A[4][4],B[4][4],AB[4][4];
lire(A,B);
calculer(A,B,AB);
afficher(A,B,AB);
return 0;
}
void lire(int A[4][4],int B[4][4]){
int i,j;
for(i=0;i<5;i++)
{
for(j=1;j<5;j++)
{
//génération de nombre entre 1 et 10
A[i][j]=rand()%10;
B[i][j]=rand()%10;
}
}
}
void calculer(int A[4][4],int B[4][4],int AB[4][4]){
int i,j;
for (i = 0; i < 4; i++){
for (j = 0; j < 4; j++){
int z;
AB[i][j] = 0;
for (z = 0; z < 4; z++){
AB[i][j] += A[i][z] * B[z][j];
}
}
}
}
void afficher(int A[4][4],int B[4][4],int AB[4][4]){
int j=0,i=0;
printf("=> A * B = AB :\n");
for(i=0;i<4;i++){
printf("| %d %d %d %d | ",A[i][j],A[i][j+1],A[i][j+2],A[i][j+3]);
printf("| %d %d %d %d | ",B[i][j],B[i][j+1],B[i][j+2],B[i][j+3]);
printf("| %d %d %d %d | \n",AB[i][j],AB[i][j+1],AB[i][j+2],AB[i][j+3]);
}
} |
Partager