Matrices [Fermé]

Signaler
Messages postés
3
Date d'inscription
mardi 4 décembre 2007
Statut
Membre
Dernière intervention
11 mai 2009
-
Messages postés
18
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
2 mars 2008
-
Bonjour,voila g un gros problem avec le c++builder5 je veux réaliser le produit de deux matrices sur ce dernier et je connue pas comment commer ni terminer.si quelqu'un peut m'aider svp fais le par ce que c'est un tp à rendre le jeudi prochin. merci pour votre attention.

2 réponses

Messages postés
53
Date d'inscription
vendredi 2 mars 2007
Statut
Membre
Dernière intervention
9 juillet 2008
52
au pire tu fais l'opération toi même avec un bon vieux for...

M3[i][j]=0;
for(k=0;k<n;k++){
M3[i][j]+=M1[i][k]*M2[k][j];
}

ce code te calculera M3(i,j), résultat du produit matriciel de M1 et M2. par conséquent, le nombre de colonne de M1 doit être égale au nombre de ligne de M2, ce qui est normal. Pour le reste, il te suffit de faire un code qui incrémente i, qui le fait revenir a 0, et qui incrémente j puis qui recommence a incrémenter i.
Pour le reste, réfère toi a des cours d'MPSI, c'est assez bien expliqué. ou encore mieux, Wikipédia :
https://fr.wikipedia.org/wiki/Produit_matriciel
je suis qu'en terminale alors les matrices je connais pas non plus en détail donc pour un problème qui est plus d'ordre mathématique, je ne pourrais pas te répondre ...
voila ! en espérant avoir été assez clair,
bon courage !
switch01
Messages postés
18
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
2 mars 2008
1
baaaaahhhh, le produi de 2 matrices c multiplier chaque ligne par chaque colonne.. c à d:

pour chaque ligne i de la patrice A on la multiplie par toutes les colonnes j de la matrice B.
n'oublie pa de sommer chaque produit pr créer l'element de la matrice C=A*B

voici l'algorithme en C++:
int som;

for(int i=0; i<=n;i++){ // boucle pour parcour les lignes de A
for(int h=0; h<=m;h++){ // boucle pour parcour les colonnes de B

som=0; // initialisation apres chaque calcule d'element.
for(int k=0; k<=l;k++){ // boucle pour parcour les colonnes de A et les lignes de B.

som=som+A[i][k]*B[k][h]; // c logique, la somme des produits des elements de chaque ligne et colonne..
}
C[i][h]=som; // remplissage de la matrice par ligne*colonne
}
}


et c fini, tester le et di moi,
j l'ai fai y a 3 ans, je m souvien, wéé lol..



alors là t'a t'a matrice C pleine, et tu peu affichier son contenue, c facile, pour verifier....


merci.


N