salut tous ,
c'est ma 1 disccusion sur ce forum et j'éspére que ça passe bien
bon j'ai un exercice qui consiste à faire les fcts suivantes:
1.ecrire une fct qui permet d'allouer la mémoire pour une matrice(en utisant biensûr les pointeurs ).
2.reçoit en argument deux pointeurs (qui pointent sur deux matricle ) et renvoit la multiplication de ces deux matrices .
nb:je ne sius pas encore bien assimulker la notion des tableausx de pointeur .
mais voilà mon essai:
voici la structure matrice :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
typedef  struct {
 int lignes,colonnes;
double  **coefficient;
}mat;
mat m;
}
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
mat *alloue_matrice(int ligne,int colonne)
{
mat *m;
m->ligne=ligne;
m->colonne =colonne ;
int i;
//on va aloeur la mémoire pour chaque case qui contient un tab de pointeur 
for (i=0;i< m->ligne;i++)
{
m->cefficient[i]=(double*)malloc(m->colonne *sizeof(double));
}
return m;
}
mat *produit_matrice(mat *a,mat *b)
{
mat pr;
int i,j,k;
//calcule le produit
if(a->ligne==b->colonne)// est ce que c'est possible d'effectuer la multiplication 
        {
for(i=0;i<ligne;i++)
   for(j=0;j<colonne;j++)
      **(pr.coefficient[i][j])=0;
            for(k=0;k<a->colonne;k++)
                  {
                **(pr.coefficient[i][j])=**(a.coefficient[i][k])+**(a.coefficient[k][j])
                }
        }
return pr;
}
svp j'ai besion de votre aide car j'ai un examen demain

merci d'avance