Cours N°10: Algorithmiques Tableaux - Matrices Département des Sciences Techniques. Université Ammar Thelidji – Laghouat.
Sommaire Introduction. Notion de Matrice. Déclaration d’un tableau (Matrice). Lecture/Ecriture d’une Matrice. Parcours partiel. Exercices.
Introduction
Tableaux Vecteurs Matrices
Notion de Matrice
Notion de Matrice Lorsque le tableau est composé de données de type simple, on parle de tableau monodimensionnel (ou vecteur). Lorsque celui-ci contient d'autres tableaux on parle alors de tableaux multidimensionnels (aussi matrice ou table). Les matrices sont donc des tableaux à deux dimensions.
Exemple: Soit la matrice M [3,4] j Indices 1 2 3 4 6 71 -8 12 14 5 56 32 17 9 21 i Elément
Déclaration d’une matrice
Déclaration de Matrice Une matrice (tableau) doit avoir : Un nom déclaré comme un identificateur. Deux dimensions connues à l’avance [ligne, colonne]: La dimension correspond au nombre maximum de cases composant la matrice (exemple [3,5] ). Deux indices (i, j) peuvent être déclarés pour permettre d’adresser les cases de la matrice. Les indices sont obligatoirement de type entier.
M : Tableau [3,5] entier Comment Déclarer une matrice? Le type d’une matrice précise l’intervalle de définition et le type (commun) des éléments. Nom_matrice : Tableau [nbre_ligne, nbre_colonne] type_éléments Exemple: Soit la matrice M 3x5 de 15 éléments entiers, définit par: M : Tableau [3,5] entier
Déclarer une matrice Algorithme exemple; Variables T : Tableau [3,5] entier; Début … Fin. 1 2 3 4 5
Accès direct
M[1 , 3] = ?? M[2 , 1] = ?? = 8 = 5 L’accès direct 6 71 8 5 12 -4 Signifie que nous pouvons obtenir le contenu d’une cellule à l’aide de deux valeurs appelées des indices, généralement i et j. Pour accéder à un élément d’une matrice on doit préciser sa position (la ligne et la colonne). Exemple : soit la matrice M [2 x 3] : M[1 , 3] = ?? M[2 , 1] = ?? = 8 = 5 1 2 3 6 71 8 5 12 -4
Exemple: Soit la Matrice M (3 x 4) Affecter à la variable A, la valeur de l’élément qui se trouve à la 2ème ligne et la 3ème colonne ? 1 2 3 4 6 71 -8 12 14 5 56 32 17 9 21 A ← M [2 , 3] A = 56
Lecture / Ecriture d’une matrice
Lecture / Ecriture d’une matrice Pour lire une matrice il faut parcourir tous ces éléments afin de donner à chaque élément une valeur. Pour afficher une matrice il faut parcourir tous ces éléments et écrire chaque élément. Pour cela l’utilisation de deux (2) boucles imbriquées parait indispensable pour parcourir la matrice.
Exemple de lecture et Ecriture d’une matrice M de 3 x 4 entiers
Algorithme j i Algorithme Lecture; Variables M: Tableau [3,4] entier; i, j :entier; Début Pour i ← 1 à 3 faire Pour j ← 1 à 4 faire Lire ( M [ i , j ] ); Ecrire ( M [ i , j ] ); FinPour; Fin. j 1 2 3 4 i
Exemple d’un Algorithme Remplir une Matrice M [3,3]
Exemple j=1 j=1 j=1 j=2 j=2 j=2 j=3 j=3 j=3 i=1 2 3 4 5 2 3 4 5 2 3 4 Algorithme Calcul; Variable M: Tableau [3,3] entier; i , j: entier; Début Pour i 1 à 3 Faire Pour j 1 to 3 Faire M [ i , j ] i + j; FinPour; Ecrire ( M [ i , j ] ); End. j=1 j=1 j=1 j=2 j=2 j=2 j=3 j=3 j=3 i=1 2 3 4 5 2 3 4 5 2 3 4 5 6 2 3 4 5 6 2 3 4 5 2 3 4 2 2 3 2 3 4 2 3 4 i i=2 j i=3 i j
Exemple : Calculer la somme des éléments de la colonne C de la matrice M [3,5]. (par exemple C = 4)
Exemple: Somme de la colonne C = 4. Algorithme Somme; Variables M: Tableau [3,5] entier; i, j, C, S :entier; Début C ← 4; S ← 0; Pour i ← 1 à 3 faire S ← S + M [ i , C ] ; FinPour; Ecrire (S); Fin. j M 1 2 3 4 5 6 71 -8 12 10 14 56 -2 32 17 9 i
Exemple : Calculer la somme des éléments de la ligne L de la matrice M [3,5]. (par exemple L = 2)
Exemple: Somme de la ligne L = 2. Algorithme Somme; Variables M: Tableau [3,5] entier; i, j, L, S :entier; Début L ← 2; S ← 0; Pour j ← 1 à 5 faire S ← S + M [ L , j ] ; FinPour; Ecrire (S); Fin. j M 1 2 3 4 5 6 71 -8 12 10 14 56 -2 32 17 9 i
Exemple : Calculer la somme des éléments d’une matrice M[2,5]
Algorithme M Somme des éléments de la matrice M[2,5] Algorithme Somme; Variables M: Tableau [2,5] entier; i, j, S :entier; Début S ← 0; Pour i ← 1 à 2 faire Pour j ← 1 à 5 faire S ← S + M [ i , j ] ; FinPour; Ecrire (S); Fin. Somme des éléments de la matrice M[2,5] M 1 2 3 4 5 6 71 -8 12 10 14 56 -2
Exercices …
Exercice N°1 : Ecrire un algorithme qui calcule: La trace T d’une matrice carrée K[3,3] 2 3
Exercice N°2 : Ecrire un algorithme qui calcule: l’addition de deux matrices A et B: C = A + B (par exemple la dimension est [3,4] )
Exercice N°3 : Ecrire un algorithme qui calcule: le produit de deux matrices A et B: C = A * B (par exemple la dimension est [3,3] )