[C] Opérations avec des matrices

Opérations avec des matrices [C] - C - Programmation

Marsh Posté le 20-11-2008 à 19:00:36    

Hello j'aurais besoin d'un peu d'aide.
 
Je dois réaliser 2 fonctions, la premiere qui transpose une matrice et la seconde qui calcule le produit de 2 matrices.
 
Voila ce que j'ai mais ca ne fonctionne pas tellement, que dois-je faire ?
 

Code :
  1. /* Fonction qui transpose une matrice */
  2. int transpose(int M[][MAX], int ln, int col)
  3. {
  4.     int i, j, a = ln, b = col;
  5.     ln = b;
  6.     col = a;
  7.     for(i = 0; i<ln; i++)
  8. { for(j = 0; j<col; j++)
  9.   M[i][j] = M[j][i];
  10. }
  11. printf("Voici votre nouvelle matrice transposee.\n" );
  12.     afficheMatrice( M[][MAX], ln, col, M);
  13.     return 0;
  14. }


 
 
 
 
 

Code :
  1. /* Fonction qui fait le produit de 2 matrices */
  2. void multiplier(int matA[M][M],int matB[M][M],int res[M][M]){
  3.      int ligne,colonne,curs;
  4.      zero(res);
  5.      for(ln=0;ln<M;ln++)
  6.         for(col=0;col<M;col++)
  7.            for(curs=0;curs<M;curs++){
  8.            res[ln][col]+=(matA[ln][curs]*matB[curs][col]);
  9.            }
  10. }

Reply

Marsh Posté le 20-11-2008 à 19:00:36   

Reply

Marsh Posté le 20-11-2008 à 20:29:49    

débuger avec un débugger :E
 
Je t'avouerais que je pas non plus fan du apssage par aprametre de ces tableaux.

Reply

Marsh Posté le 22-11-2008 à 08:37:04    

T'as essayé de creer une deuxième matrice pour recevoir la transposée?
 
pour i= 0 et j=1
M[0][1] = M[1][0]; <<< ok
 
pour i=1 et j=0
M[1][0] = M[0][1];  <<<< tu l'as affecté à un précédent tour de boucle.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed