1. AAllggoorriitthhmmiiqquuee
eett pprrooggrraammmmaattiioonn pprrooccéédduurraallee
CChhaapp IIIIII ::LLeess ttaabblleeaauuxx eett lleess cchhaaîînneess..
Lajouad Rachid
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
2. PPoouurrqquuooii lleess ttaabblleeaauuxx
• Un tableau est un type complexe;
• Il permet de stocker plusieurs variables d’un
même type sous une seule variable de ce type.
• Les différentes variables sont indexées par
rapport au début du tableau et on y accède en
spécifiant le numéro d’index de chacune.
• Pour résumer, un tableau est un ensemble de
données du même type.
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
3. TTaabblleeaauuxx uunniiddiimmeennssiioonnnneellllee
• Déclaration :
Tableau[i..N] de type
N et i sont prédéfinies et type
est un type de donnée
prédéfini.
Exemple :
Tableau[1..26] de Reel
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
4. EExxeerrcciicceess
• Trouvez un algorithme qui permet de :
– Déclarer, remplir un tableau de notes.
– Calculer la moyenne et l’écart type de ses
valeurs.
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
5. EEnn llaannggaaggee CC
type nom [taille] = {inits };
Indice de départ = 0;
Indice final = taille-1;
Accéder à une valeur quelconque (position i) du
tableau :
nom[i] …
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
6. TTaabblleeaauu pplluurriiddiimmeennssiioonnnneellllee
• Déclaration :
Tableau [i1..N1][i2..N2]…[in..Nn] de type;
Exemple :
Tableau[1..3][1..2] de Reel
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
7. EExxeerrcciiccee
• Calculer la somme et le produit de deux
matrices
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
8. EEnn llaannggaaggee CC
type nom[taille1][taille2]…[taillen]
= {{inits1},{inits2},…,{initsn}};
Indice de départ = 0;
Indice final = taille-1;
Accéder à une valeur quelconque (position i) du
tableau :
nom[i] …
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
9. TTPP
• Calculer la somme et le produit de deux
matrices
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
10. TTrrii dd’’uunn ttaabblleeaauu
• Un tri est un algorithme qui prend en
entrée un tableau et qui donne en sortie
ce même tableau avec les éléments
ordonnes suivant une relation R donnee.
• Exemple : tri par sélection, tri à bulle …
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
11. EExxeerrcciiccee
• Donner l’algorithme puis le programme en
C qui permet de trier un tableau de
valeurs réels saisies par un utilisateur.
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
12. DDeevvooiirr àà llaa mmaaiissoonn
• Tri shell et tri rapide : donner l’algorithme
puis le programme en C.
• Ecrire le code et le compiler …
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
13. RReecchheerrcchhee
• Recherche dans un tableau trié : exemple
recherche dichotomique.
• Recherche dans un tableau non trié :
exemple : recherche linéaire (recherche
itérative).
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale
14. NNoottiioonnss ssuurr lleess ppooiinntteeuurrss
Lycée Technique Ibn Sina Lajouad Rachid : Algorithmique et programmation procédurale