Bonsoir,

voici mon code pour le produit de deux matrice :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
int ProduitMatrice (int A[][3], int B[][3], int C[][3],int dim)
{
	int res = 0;
 
	for (int i = 0; i < dim; ++i)
	{
		for (int j = 0; j < dim; ++j)
		{
			C[i][j]=0;
		}
	}
 
 
	for (int i = 0; i < dim; i++) // ligne 
	{
		for (int j = 0; j < dim ; j++) // colonne
		{
			for (int k = 0 ; k < dim; k++) // 
			{
				 C[j][i] += ( A[j][k] * B[k][i]);
 
			}
 
		}
	}
 
	return C[dim][dim];
}
 
int main(int argc, char const *argv[])
{
	int P[][3]= {{2,1,5},{0,5,4},{6,1,7}};	
	int D[][3]= {{10,1,1},{1,2,3},{4,4,0}};	
 
 
	//int produit[3][3]={0};
	int produit[3][3] = {ProduitMatrice(P,D,produit,3)};
	for (int i = 0; i < 3; ++i)
	{
		for (int j = 0; j < 3; ++j)
		{
			printf("%d\t",produit[i][j] );
		}
		printf("\n");
	}
 
	return 0;
}

Aprés exécution j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
10	24	5	
21	26	15	
89	36	9
alors je devrais avoir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
41	24	5	
21	26	15	
89	36	9
Le souci viens de la valeur produit[0][0]
Comment y remedier ?