0% ont trouvé ce document utile (0 vote)
153 vues18 pages

Algorithme Matrice

Le document présente les concepts de tableaux et de matrices en programmation, en expliquant leur déclaration, leur utilisation et les boucles associées pour le traitement des données. Il aborde également les spécificités des matrices, telles que la numérotation des indices et les traitements possibles, notamment pour les matrices carrées. Enfin, des exercices pratiques sont proposés pour appliquer les connaissances acquises sur les tableaux et matrices.

Transféré par

peyadivin
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
153 vues18 pages

Algorithme Matrice

Le document présente les concepts de tableaux et de matrices en programmation, en expliquant leur déclaration, leur utilisation et les boucles associées pour le traitement des données. Il aborde également les spécificités des matrices, telles que la numérotation des indices et les traitements possibles, notamment pour les matrices carrées. Enfin, des exercices pratiques sont proposés pour appliquer les connaissances acquises sur les tableaux et matrices.

Transféré par

peyadivin
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd

INSTITUT SUPÉRIEUR

D’ENSEIGNEMENT PROFESSIONNEL
DE DIAMNIADIO
FILIÈRE TIC

ALGORITHME TABLEAU
MULTIDIMENSIONNEL
2021-2022
Présenté par: Abdoulaye MBAYE
+221772389823
[email protected]

18/05/2022 1
Sommaire
Rappel: Tableau à une dimension

Tableau à deux dimensions

(Matrice)

18/05/2022 2
Rappel: vecteur
 Tableau : Variable portant un nom et divisée en cases alignées les unes
aux autres sur un même ligne.
 Toutes les valeurs contenues dans les cases d’un tableau ont
obligatoirement le même type.

 Un tableau peut contenir des variables de tous types : entier, réel,


booléen, caractère, chaine de caractères.

 Déclaration tableau :
 Nom-Tableau : Tableau [Nombre-éléments] :type-éléments ;
 Le nombre d’éléments du tableau doit être clairement précisé lors de
la déclaration.
 Exemple: Tab : Tableau [10] :réel ;

 Indice : les cases du tableau sont numérotées successivement.


 Ce numéro est appelé indice.
 En programmation, il dépend du langage utilisé que la première case
porte le numéro 0 ou 1 (ou autre) ; la case suivante porte le numéro
suivant, etc.
18/05/2022 3
Rappel: vecteur
Notes :
Dans notre cours la première case a le numéro 0,
la deuxième le 1 et ainsi de suite jusqu’à
(nombre_éléments -1)
L’indice doit être déclaré entier car il est
impensable d’avoir une case avec le numéro 2.5.
Une valeur dans le tableau : est désignée par
le nom du tableau et entre crochet l’indice de la
case.
Exemple : la 5ème valeur du tableau Tab se
trouve dans la 4ème case et est désignée par
Tab[4]
Tab[4].
 0 1 2 3 4
18/05/2022 4
Rappel: vecteur
 Les boucles dans le traitement des tableaux : facilitent de beaucoup le
travail sur les tableaux.
 Exemple : Au lieu d’écrire 5 instructions de lecture pour saisir les valeurs du
vecteur N :
 Lire (N[0]) ;
 Lire (N[1]) ;
 Lire (N[2]) ;
 Lire (N[3]) ;
 Lire (N[4]) ;
 Une boucle à 5 itérations ferait aussi bien l’affaire
 Pour I  0 a 4 Faire
 Lire (N [I]) ;
 FinPour ;
 A l’exécution l’indice I changerait à chaque fois deI valeur
N[Ien déplaçant
case en
même temps la case à remplir : ]
0 N[0 Numéro
] 0
1 N[1 Numéro
 ] 1
18/05/2022 2 N[2 Numéro 5
Introduction

18/05/2022 6
Matrice
L’informatique nous offre la possibilité de déclarer des
tableaux dans lesquels les valeurs ne sont pas repérées
par une seule, mais par plusieurs coordonnées (2, 3, …)
Cependant les tableaux multidimensionnels à plus de 3
dimensions et plus sont laissés aux mathématiciens alors
que nous simples mortels nous contentons des tableaux
(une dimension) et matrices (deux dimensions).
Le pourquoi se résumerait dans le fait que pour
travailler nous avons besoin de gribouiller des schémas
pour trouver des solutions aux problèmes ce gribouillage
est tout à fait possible pour les tableaux et matrices,
devient très fastidieux (besoin de beaucoup
d’imagination) pour les tableaux à 3 dimensions et est
carrément impossible pour les dimensions supérieures.
Résultat on s’arrête aux matrices.

18/05/2022 7
Matrice:
Matrice :
Variable portant un nom et divisée en cases
alignées sur deux axes.
Une matrice peut être considérée comme le
regroupement de plusieurs tableaux de même
taille.
Regrouper trois tableaux ayant chacun 7
éléments aboutira à une matrice de 3 lignes
(tableaux) et 7 colonnes (Cases).
Type matrice :
De même qu’un tableau le type d’une matrice
est celui de ses éléments vu qu’ils doivent tous
être du même type.
18/05/2022 8
Matrice
Déclaration matrice :
Nom-Matrice : Tableau [Nombre-lignes]
[Nombre –colonnes] :type-éléments ;
Les nombres de lignes et colonnes doivent être
clairement précisés lors de la déclaration.
Exemple : Pour calculer la moyenne des
étudiants de 4 sections chaque section ayant
120 étudiants nous déclarons une Matrice M
comme suit :
 M : Tableau[4] [120] :réel ;

18/05/2022 9
Matrice
Indice :
Les lignes d’une matrice sont numérotées par
des entiers successifs de même que les cases
de chaque colonne.
Ces numéros sont appelés indices de ligne et
de colonne.
En programmation, il dépend du langage
utilisé que la première case porte le numéro 0
ou 1 (ou autre) ; la case suivante porte le
numéro suivant, etc. Nous respecterons la
consigne donnée pour les tableaux de débuter
par "0"

18/05/2022 10
Matrice
Une valeur dans la matrice :
Est désignée par le nom de la matrice et entre
crochet l’indice de la ligne suivi de celui de la
colonne.
 C’est comme quand on arrive en visite chez un ami
qui habite un bâtiment il faut monter à l’étage puis
frapper à la bonne porte.
Exemple : la 5ème Case de la 2ème ligne de
la matrice X est désignée par X [1][4].
0 1 2 3 4 X[1]
[4]
0
1
2
18/05/2022 11
Matrice
Les boucles dans le traitement des matrices :
Le traitement de plusieurs cases de plusieurs lignes
d’une matrice se fait en général par des boucles
imbriquées.
Exemple : Si nous avons à remplir les cases da matrice
X ci-dessus nous aurons à utiliser les boucles suivantes :
Pour I  0 à 2 Faire
Pour J  0 à 4 Faire
Lire (X [I][ J])) ;
FinPour
FinPour
A l’exécution l’indice I serait incrémenté après que
l’instruction de lecture aurait été exécutée 5 fois (l’indice
J aurait changé en 0 à 4). A chaque nouvelle valeur,
l’indice I bloquera pour permettre à l’indice J de faire un
tour complet.
18/05/2022 12
I J
Matrice
X[I][J] Case
0 0 X[0][0] Ligne 1 colonne 1
0 1 X[0][1] Ligne 1 colonne 2
0 2 X[0] [2] Ligne 1 colonne 3
0 3 X[0][3] Ligne 1 colonne 4
0 4 X[0] [4] Ligne 1 colonne 5
1 0 X[1][0] Ligne 2 colonne 1
1 1 X[1][1] Ligne 2 colonne 2
1 2 X[1][2] Ligne 2 colonne 3
1 3 X[1][3] Ligne 2 colonne 4
1 4 X[1][4] Ligne 2 colonne 5
2 0 X[2][0] Ligne 3 colonne 1
2 1 X[2][1] Ligne 3 colonne 2
2 2 X[2][2] Ligne 3 colonne 3
2 3 X[2][3] Ligne 3 colonne 4
18/05/2022 13
2 4 X[2][4] Ligne 3 colonne 5
Matrice
La matrice est alors traitée (ici remplie) ligne par ligne.
Il est possible de la traiter colonne par colonne (ç-à-d,
traiter les cases numéro 1 de la ligne 1 puis de la ligne 2
et ainsi de suite jusqu’à la dernière ligne avant de traiter
les cases avec numéro 2 de la ligne 1 puis Ligne 2 et ainsi
de suite).
Il suffit pour cela d’inverser les boucles da façon à ce que
la boucle de l’indice colonnes soit celle mise à l’extérieure.
Exécutez les boucles suivantes pour constater cet état :
Pour J  0 à 4 Faire
Pour I  0 à 2 Faire
Lire (X [I][J])) ;
FinPour
FinPour

18/05/2022 14
Matrice
Note : Entre les crochets le premier indice est
toujours celui des lignes et le deuxième celui
des colonnes quelque soit la manipulation que
l’on fait sur la matrice.
Exemple :
L’algorithme suivant permet de remplir
automatiquement toutes les cases d’une matrice
A [2][ 3] par des valeurs entières successives
partant du 0. Le résultat de ce traitement
donnera
0
une
1
matrice
2
comme la suivante :
A 3 4 5

18/05/2022 15
Matrice
Algorithme Val-succ
Constante
N2;
M3;
Variable
A : Tableau [N][M] :entier ;
Val, I, J : entier ;
Debut
Val0 ;
Pour I  0 à (N-1) Faire
Pour J  0 à (M-1) Faire
A [I,][J]  Val
Val  Val + 1
FinPour
FinPour
Pour I  0 à (N-1) Faire
Pour J  0 à (M-1) Faire
Ecrire (A [I][ J]) ;
FinPour
FinPour
18/05/2022 16
Fin.
Matrice
Note :
Certains traitements ne peuvent être exécutés
que sur des matrices carrées (Nombre de
lignes = nombre de colonnes). Tel que les
traitements sur la diagonale principale ou les
triangles inférieurs et/ ou supérieurs.

18/05/2022 17
Matrice
 Exercice 1 :
 Soit un tableau T à deux dimensions (12, 8) préalablement
rempli de valeurs réelles. Écrire un algorithme qui recherche
la plus grande valeur au sein de ce tableau.
 Exercice 2:
 Soit une matrice d’entiers W (N, N). Écrire une algorithme qui
initialise la diagonale de la matrice à 0.
 Exercice 3:
 Soit une matrice d’entiers M (N, N). Écrire un algorithme pour
vérifier si la matrice est triangulaire supérieure ou non.
 Note : Matrice triangulaire supérieure c.-à-d. que les informations
essentielles sont dans le triangle supérieur (les éléments se trouvant
en dessus de la diagonale) alors que tous les éléments du triangle
inférieur (les éléments se trouvant en dessous de la diagonale) sont à
zéro. (L’inverse est correct pour la triangulaire inférieure)

18/05/2022 18

Vous aimerez peut-être aussi