Multiplication de 2 matrices

Fermé
sirine19 Messages postés 1 Date d'inscription mercredi 5 janvier 2011 Statut Membre Dernière intervention 5 janvier 2011 - 5 janv. 2011 à 20:09
Arya Dröttningu Messages postés 581 Date d'inscription mardi 12 janvier 2010 Statut Membre Dernière intervention 3 janvier 2019 - 5 janv. 2011 à 21:02
Bonjour,



S'il vous plaît, je veux savoir que cette programme juste ou non

#include<stdio.h>
#include<stdlib.h>
#include <math.h>

/*-----------------------------------------*/
void lire_matrice1()
{
int i,j;
int A[4][4];
printf("donnez les element de A\n");

for (i=0;i<4;i++)
{
for (j=0;j<4;j++)
{
scanf("%d",&A[i][j]);
}
}
}
/*--------------------------------------------------------*/
void lire_matrice2()
{
int B[4][4];
int i,j;
printf("donnez les element de B\n");
for (i=0;i<4;i++)
{
for (j=0;j<4;j++)
{

scanf("%d",&B[i][j]);
}
}
}
/*----------------------------------------------------------*/

void multiply_matrice(int A[4][4],int B[4][4])
{
int i,j,k;

int R;

int C[4][4];
for (i=0;i<4;i++)
{
for (j=0;j<4;j++)
{
R = 0;
for (k=0;k<3;k++)
{
R = R + (A[i][k] * B[k][j]);
}
C[i][j] = R;
}

}

}

/*----------------------------------------------------*/
void afficher_resultat()
{
int i,j;
int C[4][4];
for (i=0;i<4;i++)
{
for (j=0;j<4;j++)
{
printf("%d\n",C[i][j]);
}

}

}
/*-------------------------------------------------*/
int main()
{
int A[4][4],B[4][4];
lire_matrice1();
lire_matrice2();
multiply_matrice(A,B);
afficher_resultat();
system("pause");
return 0;
}

1 réponse

Arya Dröttningu Messages postés 581 Date d'inscription mardi 12 janvier 2010 Statut Membre Dernière intervention 3 janvier 2019 157
5 janv. 2011 à 21:02
Hello,

Alors pour répondre à ta question....................non ça ne marche pas !

Bon si on considère la matrice A :
tu la déclare dans le main (jusque là ok) puis tu appelles la fonction lire_matrice1.
dans cette fonction, tu redéfinis une matrice A que tu remplis SAUF QUE cette matrice ne sera que dans la fonction.
0