Algorithmique

Fermé
lalati Messages postés 83 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 6 avril 2013 - 25 déc. 2009 à 18:29
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 26 déc. 2009 à 02:27
bonsoir à tous;
alors voilà je travail sur delphi et je devrai écrire 4 procédure ; la 1ére pour faire la somme de deux matrice N*N; 2eme pour la multiplication de deux matrice N*N; 3eme multiplier et diviser une matrice par un scalaire et enfin calculer le déterminant d'une matrice ; bon j'ai su faire la somme et la division et multiplication par un scalaire ; mais j'ai pas réussi à faire la procédure de multiplication de deux matrice ; je connait le principe mais j'arrive pas a écrire le programme ; je ne demande pas la solution à cet exercice mais est ce que quelqu'un peut m'indiquer le chemin pour le résoudre ; merci de bien vouloir me répondre ; bonne fin de journée à tous

2 réponses

Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
25 déc. 2009 à 23:22
indice : c'est comme si tu faisais le produit scalaire de deux vecteurs. Exemple : l'élément en position (2,3) de la matrice (2ème ligne, 3ème colonne du résultat) : c'est le produit scalaire de la 2ème ligne de la première matrice avec la 3ème colonne de la deuxième matrice.

Un "produit scalaire" n'est qu'une boucle de produits sommés dans un seul résultat.
0
lalati Messages postés 83 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 6 avril 2013 4
26 déc. 2009 à 00:44
bonsoir;
bon pour la multiplication de deux matrice je devrai avoir à la fi nune matrice bien sur ; par exemple deux matrice a et B (NxN)de taille N=2; le résultat sera affiché dans une matrice c tel que c[1,1]:=A[1,1]*B[1,1]+A[1,2]*B[2,1] et ainsi de suite ; mais j'arrive pas à écrire ce programme , il est clair que je dois utiliser une boucle tant que mais combien de compteur dois-je utiliser . merci de bien vouloir me répondre
exellente soirée à tous
Ça prend une minute pour remarquer quelqu’un, une heure pour l’apprécier une journée pour l’aimer mais toute une vie pour l’oublier
0
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
26 déc. 2009 à 02:27
je suppose qu'on est d'accord que l'important est de créer la matrice résultat. L'affichage ne pose pas de problème.

Ensuite, comment ferais-tu en vrai, avec un crayon et une feuille de papier (et une calculette) ? Tu ferais un calcul pour chaque case de la matrice résultat.

Il faut traduire "pour chaque case" en deux boucles imbriquées : une boucle qui parcoure les lignes, une autre qui parcoure les colonnes.

Ceci tu remarqueras, c'est pareil que pour les additions/soustractions/etc...

Ensuite, à chaque fois que tu passes dans cette boucle, il y a un calcul à faire qui demande encore une boucle.

(En tout tu auras donc 3 boucles imbriquées)

Ce dernier calcul c'est justement celui dont je te parlais tout à l'heure. C'est aussi celui qui est donné comme règle pour la multiplication dans n'importe quel manuel qui traite des matrices (l'élément c_ij et A*B=C est la somme pour k allant de 1 à n des a_ik*b_kj)
0