Algo-Chapitre5 Matrices
Algo-Chapitre5 Matrices
Algo-Chapitre5 Matrices
Considérons l’exemple suivant : soit une section de 1000 étudiants qui suivent 7 modules, on veut
calculer la moyenne de chaque étudiant.
Quelles sont les données ? Quelles sont les résultats ? comment on les déclare ?
Utiliser 1000 * 7 variables pour les notes de 1000 étudiants dans 7 modules et 1000 variables
pour les moyennes !!!!!! c’est déraison,
Utiliser 7 vecteurs (tableau à une dimension) de taille 1000 pour les notes et un autre pour les
moyennes ç'est aussi illogique.
Dans ce cas le vecteur ne répond pas à cette réalité, alors chercher d’autres structures
Tableau à deux dimension (matrice), nous créons une seule variable de type matrice de
1000 lignes (étudiants) et 8 colonnes (notes + moyenne).
Une table ou matrice est un tableau bidimensionnel (à deux dimension), composé de plusieurs
lignes et plusieurs colonnes.
Pour se déplacer dans une matrice, on a besoin de deux indices (par convention i et j), le premier
indique le numéro de la ligne et le deuxième indique le numéro de la colonne. L'élément d'indice
[i,j] est celui du croisement de la ligne i avec la colonne j.
Une case dans une matrice est connue par le nom de la matrice suivie entre crochets par son indice
de ligne, son indice de colonne : Exemple M[i,j]
Comme les vecteurs :
L'indice peut être une constante, une variable ou une expression arithmétique.
Un élément de la matrice est manipulé exactement comme une variable.
Dans la partie Constante, on peut définir la taille de la matrice (lignes, colonnes). Ensuite, on
peut déclarer le nombre d’éléments réellement à saisir.
Le nombre d'éléments à saisir ne doit pas dépasser la taille de la matrice.
En Algorithmique l’indice des lignes et des colonnes commence par 1.
M[3,5]= 11
M[2,2]= 8
26
Chapitre 5 Les tableaux et les chaine de caractères
Pour déclarer une matrice :
Algorithme Code C
On peut utiliser les deux déclarations suivantes : « type » « nom[taille][ taille]»;
1. « Nom » : tableau de « taille_Lignes,taille_Colonnes » de « type » Exp :
2. « Nom » : tableau de [VminL..VmaxL, VminC..VmaxC] de « type » float T[1000][8] ;
Exemples :
1. T : tableau de [1000,8] de réels.
2. T : tableau de [1..1000,1..8] de réels.
Algorithme Code C
nom du tableau [indice ligne , indice colonne] nom du tableau[indice ligne][indice colonne]
Exp : T[2,3] 5, T[3,1] a+1, T[1,1] = ’a’, … Exp : T[1][2] =5, T[2][0]=a+1, T[0][0]==’a’, …
Algorithme Code C
Algorithme Lecture_matrice ; #include<stdio.h>
Var T : tableau[1..1000,1..7] d’entier ; Main()
Début {
Pour i de 1 à 1000 faire int T[1000][7] , i ;
Pour j de 1 à 7 faire for (i=0 ;i<1000 ;i++)
Lire(T[i,j]) for (j=0 ;j<7 ;i++)
Fin pour scanf(‘’%d’’, &T[i][j]) ;
Fin pour }
Fin.
Algorithme Code C
Algorithme Affichage_matrice ; #include<stdio.h>
Var T : tableau[1..1000,1..7] d’entier ; Main()
Début {
Pour i de 1 à 1000 faire int T[1000][7];
Pour j de 1 à 7 faire for (i=0 ;i<1000 ;i++)
ecrire(T[i,j]) {
Fin pour for (j=0 ;j<7 ;i++)
Fin pour printf(‘’%d\t’’, T[i][j]) ;
Fin. printf(‘’\n’’) ;
}
27
Chapitre 5 Les tableaux et les chaine de caractères
Exemples :
Achat : tableau [1..100, 1..100, 1..300] d’entiers ;
Vente : tableau [1..10, 1..47, 1..12, 1..7] de réels ;
Le premier est un tableau à trois dimensions et le deuxième est un tableau à quatre dimensions.
La référence d’un élément dans un tableau à N dimensions, se fait de la même manière que celle pour
un tableau à une ou à deux dimensions, en précisant l’indice de chaque dimension.
Exercices à domicile
Exercice 1
Ecrire un algorithme qui permet de remplir et d’afficher un tableau à deux dimensions
Exercice 2
Ecrire un algorithme qui permet de chercher le minimum dans un tableau à deux dimensions
Exercice 3
Ecrire un algorithme qui permet de calculer la moyenne des éléments de l’anti diagonale d’un tableau
à deux dimensions
Exercice 4
Soient A un tableau qui contient les notes de tous les modules d’un étudiant X, B : Le vecteur des
coefficients qui correspond à ces notes, Ecrire un programme qui permet de calculer la moyenne de
l’étudiant X.
Exercice 5
Ecrire un algorithme qui permet de calculer le nombre d’occurrences d’un nombre donné x dans un
tableau à deux dimensions
Exercice 5
Ecrire un algorithme qui permet de calculer le nombre d’occurrences d’un nombre donné x dans un
tableau à deux dimensions
28