SlideShare une entreprise Scribd logo
1  sur  21
CHAPITRE:
Structuresdedonnées
(Tableaubidimensionnel:
Matrices) 1ere année LMD Sciences
et Technologies
Introduction
C’est quoi une Matrice
Déclaration d’une Matrice
Accès aux éléments d’une matrice
Quelques opérations de base sur les matrices
Exercices d'applications
Sommaire:
1
2
3
4
5
6
INTRODUCTION
1. Notion d’une matrice : est un ensemble de données de même type
logées en mémoire centrale et référencé par deux indices (les lignes et
les colonnes). Les matrices sont donc des tableaux à deux dimensions
(bidimensionnels).
2. Caractéristiques d’une matrice:
Une matrice est caractérisée par:
Son nom: Par exemple, la matrice M.
Son type : tous les éléments de la matrice ont le même type et c’est
le type de la matrice.
Ses éléments : chaque case mémoire représente un élément de la
matrice.
Le nom de chaque élément: est composé du nom de la matrice
avec deux indices (ligne, colonne). Ces derniers indiquent la
position de l’élément dans la matrice.
Par exemple, l’élément M[ 3 , 2 ]= 2.
Il existe deux manières pour remplir une matrice :
1. Ligne par ligne
2. Colonne par colonne
1 2 3 4
1 -4,9 2 14,3 -6
2 1,3 -12 0 -0,5
3 11 2 -3 0,75
M[3,2]= 2
DÉCLARATION
D'UNE MATRICE
Exemples:
Variable
Mat : Tableau [1..4, 1..3] d’entiers;
Variable
M : Tableau [1..2, 1..2] de logiques;
Variable
A : Tableau [1..2, 1..3] de caractères;
1 2 3
1 6 2 14
2 19 -12 0
3 11 2 -3
4 32 9 0
1 2
1 TRUE FALSE
2 FALSE TRUE
1 2 3
1 R Y *
2 U % &
Variable
nom_matrice: tableau [MinInd1..MaxInd1, MinInd2 ..MaxInd2] de type;
Syntaxe (algorithme):
Valeur de l’indice de
ligne initial
Valeur de l’indice ligne
final
Valeur de l’indice de
colonne initial
Valeur de l’indice
colonne final
Exemples:
Var
Mat :array[1..7, 1..5] of integer;
M : array [1..2, 1..2] of boolean;
A : Array [1..2, 1..3] of char;
Cas particulier:
En cas d’une matrice Mat de nXm valeurs entières, on declare:
Mat: array[1..100, 1..100] of integer;
M: array[1..50, 1..50] of real;
Ici, c’est le cas de déclaration d’une matrice statique.
Var
Nom_tableau :array[MinInd1..MaxInd1, MinInd2 ..MaxInd2] of type;
Syntaxe (Pascal):
ACCÈSAUX
ÉLÉMENTS
D’UNE MATRICE
1. Création d’une matrice (Lire/remplir une matrice): saisir les éléments par le
clavier:
Exemple: écrire un algorithmepermettant de remplir une matrice (5x4)
d’éléments réels.
1 2 3 4
1 -4,9 2 14,3 -6
2 10 -2 3 4
3 1 2 14,3 -6
4 2 -12 0 -0,5
5 3 2 -3 0,75
INDICES
ELEMENTS
Deux boucles imbriquées permettent de remplir une matrice, ligne par ligne:
 La première boucle parcours les lignes de la matrice.
 Pour chaque ligne, la deuxième boucle parcours les colonnes de la matrice.
MM [ 2, 3 ]=3
Indice de ligne Indice de colonne
Algorithme saisie;
Variable
M: Tableau[1..5, 1..4] de réel;
i,j: entier;
Debut
Pour i← 1 à 5 faire
Pour i← 1 à 4 faire
Ecrire ('Donner l''élément numéro ', i, j,' de la matrice‘)
Lire (M[i,j]);
Finpour;
Finpour;
Fin.
4 colonnes de la
matrice de 1 à 4
5 lignes de la
matrice de 1 à 5
Pour parcourir les
lignes
Pour parcourir les
colonnes
2. Edition d’une matrice (affichage des éléments d’une matrice)
L’affichage d’une matrice se fait aussi par les boucles imbriquées.
Une boucle pour parcourir les lignes et une autre pour parcourir les colonnes.
1 2 3
1 -4,9 2 14,3
2 10 -2 3
3 1 2 14,3
4 2 -12 0
5 3 2 -3
L’affichage ligne par ligne:
Ecrire (‘L''élément numéro ', 1, 1,' de la matrice=‘,
Mat[1,1]);
Ecrire (‘L''élément numéro ', 1,2,' de la matrice=‘,
Mat[1,2]);
Ecrire (‘L''élément numéro ', 1, 3,' de la matrice=‘,
Mat[1,3]);
Ecrire (‘L''élément numéro ', 2, 1,' de la matrice=‘,
Mat[2,1]);
……
Ecrire (‘L''élément numéro ', 5, 3,' de la matrice=‘,
Mat[5,3]);
M
L’affichage colonne par colonne:
Ecrire (‘L''élément numéro ', 1, 1,' de la matrice=‘,
Mat[1,1]);
Ecrire (‘L''élément numéro ', 2,1,' de la matrice=‘,
Mat[2,1]);
Ecrire (‘L''élément numéro ', 3 ,1,' de la matrice=‘,
Mat[3,1]);
Ecrire (‘L''élément numéro ', 4, 1,' de la matrice=‘,
Mat[4,1]);
……
Ecrire (‘L''élément numéro ', 3, 5,' de la matrice=‘,
Mat[3,5]);
Exemple: écrire un algorithme permettant d’afficher les éléments d’une
matrice 3x4 d’éléments entiers.
Algorithme affichage;
Variable
Mat: Tableau[1..3, 1..4] d’entiers;
i,j: entier;
Debut
Pour i← 1 à 5 faire
Pour i← 1 à 4 faire
Ecrire (‘L''élément numéro ', i, j,' de la matrice=‘, Mat[i,j]);
Finpour;
Finpour;
Fin.
QUELQUES
OPÉRATIONS
DE BASESUR
LES MATRICES
Voici les opérations de base prises en charge par un tableau.
Affichage: Imprimer tous les éléments/ quelques éléments
de la matrice un par un.
Insertion : Ajouter un élément dans un position donnée.
Suppression : Supprimer un élément de la matrice.
Rechercher : Rechercher un élément en utilisant une
valeur ou indiquant une position.
Mise à jour: Mettre à jour un élément à une position
donnée/ mettre à jour une matrice.
1 2 3 4 5
1 -1 22 26 14 14
2 23 10 38 13 -3
3 8 -10 -11 27 7
4 40 5 23 5 8
5 -9 1 7 15 11
1 2 3 4 5
1 5 26 -20 11 -10
2 1 -10 3 -14 35
3 -12 1 0 -8 -9
4 24 20 -2 -15 -5
5 34 28 0 -16 -16
1 2 3 4 5
1 4 48 6 25 4
2 24 0 41 -1 32
3 -4 -9 -11 19 -2
4 64 25 21 -10 3
5 25 29 7 -1 -5
A B
CC[1,1]←A[1,1]+B[1,1]
C[1,2]←A[1,2]+B[1,2]
C[1,3]←A[1,3]+B[1,3]
C[1,4]←A[1,4]+B[1,4]
C[2,1]←A[2,1]+B[2,1]
C[2,2]←A[2,2]+B[2,2]
…….
C[i,j]←A[i,j]+B[i,j]
Traitement
A
B
C
+
=
Exercice: Ecrire un algorithme qui calcul la
somme de deux matrices A[15,15] et B[15,15] de
types réels et met le résultat dans une matrice
C[15,15].
.
Algorithme Som_matrice;
Variable
A, B, C :Tableau [1..15,1..15] de
réels;
i, j : entier;
Début
Pour i1 à 15 Faire
Pour j1 à 15 Faire
LireA[i,j];
Lire B[i,j] ;
Fpour;
Fpour;
Pour i1 à 15 Faire
Pour j1 à 15 Faire
C[i,j]A[i,j]+B[i,j] ;
Fpour;
Fpour;
Pour i1 à 15 Faire
Pour j1 à 15 Faire
Ecrire (C[i,j])
Fpour;
Fpour;
Fin.
Remplir
les deux
matrices
A et B
Afficher la
matrice C
(résultat)
Traitement de
la somme des
deux matrices
EXERCICES
D’APPLICATIONS
Exercice N°1 :
Ecrire un programme PASCAL qui permet de :
1. Remplir une matrice carrée de taille 4x4.
2. Calculer et afficher le nombre d’éléments positifs,
négatifs et nuls.
Exercice N°2 :
Ecrire un programme PASCAL qui permet de :
1. Remplir une matrice d’entiers de taille n*m
2. Afficher le nombre d’éléments impairs par colonne.
Exercice N°3 :
Ecrire le programme PASCAL qui calcul la multiplication
d’une matrice A(20,20) avec un vecteur B(20) et met le
résultat dans un vecteur C(20).

Contenu connexe

Tendances

resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdfsalah fenni
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmiqueelharraj
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 
Python avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exceptionPython avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exceptionECAM Brussels Engineering School
 
Cours Algorithme: Tableau
Cours Algorithme: TableauCours Algorithme: Tableau
Cours Algorithme: TableauInforMatica34
 
Corrigé qcm initiation informatique sgbd - réseau - internet - architectu...
Corrigé qcm   initiation informatique   sgbd - réseau - internet - architectu...Corrigé qcm   initiation informatique   sgbd - réseau - internet - architectu...
Corrigé qcm initiation informatique sgbd - réseau - internet - architectu...Sofien Zarrouki
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac Amri Ossama
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 
Traitement d'image
Traitement d'imageTraitement d'image
Traitement d'imageAnissa Teyeb
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Qcm en-informatique-avec-correction
Qcm en-informatique-avec-correction Qcm en-informatique-avec-correction
Qcm en-informatique-avec-correction Jamal Yasser
 

Tendances (20)

resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdf
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
Python avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exceptionPython avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exception
 
Cours Algorithme: Tableau
Cours Algorithme: TableauCours Algorithme: Tableau
Cours Algorithme: Tableau
 
Fascicule tp programmation c
Fascicule tp programmation cFascicule tp programmation c
Fascicule tp programmation c
 
Corrigé qcm initiation informatique sgbd - réseau - internet - architectu...
Corrigé qcm   initiation informatique   sgbd - réseau - internet - architectu...Corrigé qcm   initiation informatique   sgbd - réseau - internet - architectu...
Corrigé qcm initiation informatique sgbd - réseau - internet - architectu...
 
Chapitre 1 rappel
Chapitre 1   rappelChapitre 1   rappel
Chapitre 1 rappel
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
02 correction-td smi-s3-algo2
02 correction-td smi-s3-algo202 correction-td smi-s3-algo2
02 correction-td smi-s3-algo2
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
Cours complet Base de donne Bac
Cours complet Base de donne Bac Cours complet Base de donne Bac
Cours complet Base de donne Bac
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 
Traitement d'image
Traitement d'imageTraitement d'image
Traitement d'image
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
Tp 2 vecteur et matrice
Tp 2 vecteur et matriceTp 2 vecteur et matrice
Tp 2 vecteur et matrice
 
Qcm en-informatique-avec-correction
Qcm en-informatique-avec-correction Qcm en-informatique-avec-correction
Qcm en-informatique-avec-correction
 
Python avancé : Tuple et objet
Python avancé : Tuple et objetPython avancé : Tuple et objet
Python avancé : Tuple et objet
 
Récursivité
RécursivitéRécursivité
Récursivité
 

Similaire à Cours Algorithme: Matrice

Tableau a deux dimensions (1).pptx
Tableau a deux dimensions (1).pptxTableau a deux dimensions (1).pptx
Tableau a deux dimensions (1).pptxPROFPROF11
 
Lecture 3: Visualization and Programming
Lecture 3: Visualization and ProgrammingLecture 3: Visualization and Programming
Lecture 3: Visualization and ProgrammingSmee Kaem Chann
 
Chapitre 8 - Les tableaux et les pointeurs.pdf
Chapitre 8 - Les tableaux et les pointeurs.pdfChapitre 8 - Les tableaux et les pointeurs.pdf
Chapitre 8 - Les tableaux et les pointeurs.pdfShiniGami0o0
 
Ch5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfCh5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfFadouaBouafifSamoud
 
Chapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CAbdelouahed Abdou
 
Chapitre3TableauxEnCppV2019
Chapitre3TableauxEnCppV2019Chapitre3TableauxEnCppV2019
Chapitre3TableauxEnCppV2019Aziz Darouichi
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique Smee Kaem Chann
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)abdellah12
 
Les vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxLes vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxrezgui10
 
Calcul scientifique avec python Numpy
Calcul scientifique avec python NumpyCalcul scientifique avec python Numpy
Calcul scientifique avec python NumpyHaytam EL YOUSSFI
 
UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10megaplanet20
 

Similaire à Cours Algorithme: Matrice (20)

Tableau a deux dimensions (1).pptx
Tableau a deux dimensions (1).pptxTableau a deux dimensions (1).pptx
Tableau a deux dimensions (1).pptx
 
04 cours matrices_suites
04 cours matrices_suites04 cours matrices_suites
04 cours matrices_suites
 
Initiation r
Initiation rInitiation r
Initiation r
 
Lecture 3: Visualization and Programming
Lecture 3: Visualization and ProgrammingLecture 3: Visualization and Programming
Lecture 3: Visualization and Programming
 
Chapitre 8 - Les tableaux et les pointeurs.pdf
Chapitre 8 - Les tableaux et les pointeurs.pdfChapitre 8 - Les tableaux et les pointeurs.pdf
Chapitre 8 - Les tableaux et les pointeurs.pdf
 
Chapitre 2
Chapitre 2Chapitre 2
Chapitre 2
 
Ch5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdfCh5-les tableaux et les pointeurs.pdf
Ch5-les tableaux et les pointeurs.pdf
 
Chapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en C
 
Chapitre3TableauxEnCppV2019
Chapitre3TableauxEnCppV2019Chapitre3TableauxEnCppV2019
Chapitre3TableauxEnCppV2019
 
Chap 4 déterminant
Chap 4 déterminantChap 4 déterminant
Chap 4 déterminant
 
Matlab Travaux Pratique
Matlab Travaux Pratique Matlab Travaux Pratique
Matlab Travaux Pratique
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)
 
Matlab by Prof.Keang Sè Pouv
Matlab by Prof.Keang Sè PouvMatlab by Prof.Keang Sè Pouv
Matlab by Prof.Keang Sè Pouv
 
Chap 3 matrice
Chap 3 matriceChap 3 matrice
Chap 3 matrice
 
Tp2 matlab
Tp2 matlab Tp2 matlab
Tp2 matlab
 
Chapitre3 tableauxcpp
Chapitre3 tableauxcppChapitre3 tableauxcpp
Chapitre3 tableauxcpp
 
Les vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptxLes vecteurs seconde2020.pptx
Les vecteurs seconde2020.pptx
 
Correction td2
Correction td2Correction td2
Correction td2
 
Calcul scientifique avec python Numpy
Calcul scientifique avec python NumpyCalcul scientifique avec python Numpy
Calcul scientifique avec python Numpy
 
UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10
 

Dernier

Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 37
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationpapediallo3
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsRajiAbdelghani
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfRiDaHAziz
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSKennel
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfRiDaHAziz
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 

Dernier (20)

Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'information
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 temps
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 
DO PALÁCIO À ASSEMBLEIA .
DO PALÁCIO À ASSEMBLEIA                 .DO PALÁCIO À ASSEMBLEIA                 .
DO PALÁCIO À ASSEMBLEIA .
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdf
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 

Cours Algorithme: Matrice

  • 2. Introduction C’est quoi une Matrice Déclaration d’une Matrice Accès aux éléments d’une matrice Quelques opérations de base sur les matrices Exercices d'applications Sommaire: 1 2 3 4 5 6
  • 4. 1. Notion d’une matrice : est un ensemble de données de même type logées en mémoire centrale et référencé par deux indices (les lignes et les colonnes). Les matrices sont donc des tableaux à deux dimensions (bidimensionnels). 2. Caractéristiques d’une matrice: Une matrice est caractérisée par: Son nom: Par exemple, la matrice M. Son type : tous les éléments de la matrice ont le même type et c’est le type de la matrice. Ses éléments : chaque case mémoire représente un élément de la matrice.
  • 5. Le nom de chaque élément: est composé du nom de la matrice avec deux indices (ligne, colonne). Ces derniers indiquent la position de l’élément dans la matrice. Par exemple, l’élément M[ 3 , 2 ]= 2. Il existe deux manières pour remplir une matrice : 1. Ligne par ligne 2. Colonne par colonne 1 2 3 4 1 -4,9 2 14,3 -6 2 1,3 -12 0 -0,5 3 11 2 -3 0,75 M[3,2]= 2
  • 7. Exemples: Variable Mat : Tableau [1..4, 1..3] d’entiers; Variable M : Tableau [1..2, 1..2] de logiques; Variable A : Tableau [1..2, 1..3] de caractères; 1 2 3 1 6 2 14 2 19 -12 0 3 11 2 -3 4 32 9 0 1 2 1 TRUE FALSE 2 FALSE TRUE 1 2 3 1 R Y * 2 U % & Variable nom_matrice: tableau [MinInd1..MaxInd1, MinInd2 ..MaxInd2] de type; Syntaxe (algorithme): Valeur de l’indice de ligne initial Valeur de l’indice ligne final Valeur de l’indice de colonne initial Valeur de l’indice colonne final
  • 8. Exemples: Var Mat :array[1..7, 1..5] of integer; M : array [1..2, 1..2] of boolean; A : Array [1..2, 1..3] of char; Cas particulier: En cas d’une matrice Mat de nXm valeurs entières, on declare: Mat: array[1..100, 1..100] of integer; M: array[1..50, 1..50] of real; Ici, c’est le cas de déclaration d’une matrice statique. Var Nom_tableau :array[MinInd1..MaxInd1, MinInd2 ..MaxInd2] of type; Syntaxe (Pascal):
  • 10. 1. Création d’une matrice (Lire/remplir une matrice): saisir les éléments par le clavier: Exemple: écrire un algorithmepermettant de remplir une matrice (5x4) d’éléments réels. 1 2 3 4 1 -4,9 2 14,3 -6 2 10 -2 3 4 3 1 2 14,3 -6 4 2 -12 0 -0,5 5 3 2 -3 0,75 INDICES ELEMENTS Deux boucles imbriquées permettent de remplir une matrice, ligne par ligne:  La première boucle parcours les lignes de la matrice.  Pour chaque ligne, la deuxième boucle parcours les colonnes de la matrice. MM [ 2, 3 ]=3 Indice de ligne Indice de colonne
  • 11. Algorithme saisie; Variable M: Tableau[1..5, 1..4] de réel; i,j: entier; Debut Pour i← 1 à 5 faire Pour i← 1 à 4 faire Ecrire ('Donner l''élément numéro ', i, j,' de la matrice‘) Lire (M[i,j]); Finpour; Finpour; Fin. 4 colonnes de la matrice de 1 à 4 5 lignes de la matrice de 1 à 5 Pour parcourir les lignes Pour parcourir les colonnes
  • 12. 2. Edition d’une matrice (affichage des éléments d’une matrice) L’affichage d’une matrice se fait aussi par les boucles imbriquées. Une boucle pour parcourir les lignes et une autre pour parcourir les colonnes. 1 2 3 1 -4,9 2 14,3 2 10 -2 3 3 1 2 14,3 4 2 -12 0 5 3 2 -3 L’affichage ligne par ligne: Ecrire (‘L''élément numéro ', 1, 1,' de la matrice=‘, Mat[1,1]); Ecrire (‘L''élément numéro ', 1,2,' de la matrice=‘, Mat[1,2]); Ecrire (‘L''élément numéro ', 1, 3,' de la matrice=‘, Mat[1,3]); Ecrire (‘L''élément numéro ', 2, 1,' de la matrice=‘, Mat[2,1]); …… Ecrire (‘L''élément numéro ', 5, 3,' de la matrice=‘, Mat[5,3]); M L’affichage colonne par colonne: Ecrire (‘L''élément numéro ', 1, 1,' de la matrice=‘, Mat[1,1]); Ecrire (‘L''élément numéro ', 2,1,' de la matrice=‘, Mat[2,1]); Ecrire (‘L''élément numéro ', 3 ,1,' de la matrice=‘, Mat[3,1]); Ecrire (‘L''élément numéro ', 4, 1,' de la matrice=‘, Mat[4,1]); …… Ecrire (‘L''élément numéro ', 3, 5,' de la matrice=‘, Mat[3,5]);
  • 13. Exemple: écrire un algorithme permettant d’afficher les éléments d’une matrice 3x4 d’éléments entiers. Algorithme affichage; Variable Mat: Tableau[1..3, 1..4] d’entiers; i,j: entier; Debut Pour i← 1 à 5 faire Pour i← 1 à 4 faire Ecrire (‘L''élément numéro ', i, j,' de la matrice=‘, Mat[i,j]); Finpour; Finpour; Fin.
  • 15. Voici les opérations de base prises en charge par un tableau. Affichage: Imprimer tous les éléments/ quelques éléments de la matrice un par un. Insertion : Ajouter un élément dans un position donnée. Suppression : Supprimer un élément de la matrice. Rechercher : Rechercher un élément en utilisant une valeur ou indiquant une position. Mise à jour: Mettre à jour un élément à une position donnée/ mettre à jour une matrice.
  • 16. 1 2 3 4 5 1 -1 22 26 14 14 2 23 10 38 13 -3 3 8 -10 -11 27 7 4 40 5 23 5 8 5 -9 1 7 15 11 1 2 3 4 5 1 5 26 -20 11 -10 2 1 -10 3 -14 35 3 -12 1 0 -8 -9 4 24 20 -2 -15 -5 5 34 28 0 -16 -16 1 2 3 4 5 1 4 48 6 25 4 2 24 0 41 -1 32 3 -4 -9 -11 19 -2 4 64 25 21 -10 3 5 25 29 7 -1 -5 A B CC[1,1]←A[1,1]+B[1,1] C[1,2]←A[1,2]+B[1,2] C[1,3]←A[1,3]+B[1,3] C[1,4]←A[1,4]+B[1,4] C[2,1]←A[2,1]+B[2,1] C[2,2]←A[2,2]+B[2,2] ……. C[i,j]←A[i,j]+B[i,j] Traitement A B C + = Exercice: Ecrire un algorithme qui calcul la somme de deux matrices A[15,15] et B[15,15] de types réels et met le résultat dans une matrice C[15,15]. .
  • 17. Algorithme Som_matrice; Variable A, B, C :Tableau [1..15,1..15] de réels; i, j : entier; Début Pour i1 à 15 Faire Pour j1 à 15 Faire LireA[i,j]; Lire B[i,j] ; Fpour; Fpour; Pour i1 à 15 Faire Pour j1 à 15 Faire C[i,j]A[i,j]+B[i,j] ; Fpour; Fpour; Pour i1 à 15 Faire Pour j1 à 15 Faire Ecrire (C[i,j]) Fpour; Fpour; Fin. Remplir les deux matrices A et B Afficher la matrice C (résultat) Traitement de la somme des deux matrices
  • 19. Exercice N°1 : Ecrire un programme PASCAL qui permet de : 1. Remplir une matrice carrée de taille 4x4. 2. Calculer et afficher le nombre d’éléments positifs, négatifs et nuls.
  • 20. Exercice N°2 : Ecrire un programme PASCAL qui permet de : 1. Remplir une matrice d’entiers de taille n*m 2. Afficher le nombre d’éléments impairs par colonne.
  • 21. Exercice N°3 : Ecrire le programme PASCAL qui calcul la multiplication d’une matrice A(20,20) avec un vecteur B(20) et met le résultat dans un vecteur C(20).