Académique Documents
Professionnel Documents
Culture Documents
LES TABLEAUX
Par : Zineb REBBANI
Introduction
Le long de tout les chapitres précédents, nous avons utilisé, que des variables
qui prennent un emplacement unique dans la mémoire de types standard.
Exemple :
Considérons 30 valeurs réelles(les notes des élèves d’une classe par exemple),
pour loger ces valeurs de même type, même nature et qui vont subir, sans
doute, le même traitement, il faut déclarer 30 variables différentes a,b,c…etc.
« dispersées » dans un ordre quelconque dans la mémoire de l’ordinateur.
2
Introduction
Les inconvénients de cette méthode sont :
-Difficulté d’accéder rapidement à la note d’un élève donné (le 5éme par
exemple)
-Pour lire ces 30 notes sur le clavier, il faut 30 lignes, minimum, de
programmation(lecture de données) ce qui va rendre les algorithmes
très long et parfois impossibles.
-La même chose pour les opérations d’écriture de ces données sur
l’écran,
-…etc
3
Introduction
Solution:
On a la possibilité de réunir toutes ces valeurs dans une seule variable dite
structurée et composée de 30 cases juxtaposées et mêmes « dimensions » car
elles vont recevoir des données de même type.
30valeurs réelles
4
Définition
Un tableau est un ensemble d'éléments de même type désignés par un
identificateur unique. La détermination de la position et de la valeur
d’un élément donné dans un tableau se fait à l’aide d’une variable
entière appelée : indice.
Ainsi, Il est possible de définir des tableaux tout types : entiers – réels – des
chaînes de caractères - des booléens.
5
Remarques
L'accès à un élément du tableau se fait au moyen de l'indice. Par exemple,
notes[i] donne la valeur de l'élément i du tableau notes
Selon les langages, le premier indice du tableau est soit 0, soit 1. Le plus
souvent c'est 0 (c'est ce qu'on va adopter en pseudo-code). Dans ce cas,
notes[i] désigne l'élément i+1 du tableau notes
Il est possible de déclarer un tableau sans préciser au départ sa dimension.
Cette précision est faite ultérieurement .
6
Exemple 1
Enoncé : Calculez à l’aide des tableaux le nombre des étudiants ayant
obtenu une note supérieures à 10 :
7
Tableaux : saisie et affichage
Remplir tableau:
Variables i : entier
tableau notes[30] : réel
Pour i allant de 0 à n-1
écrire ("Saisie de l'élément ", i + 1)
lire (T[i] )
FinPour
Fin
Afficher tableau
Variables i : entier
tableau notes[30] : réel
Pour i allant de 0 à n-1
écrire ("T[",i, "] =", T[i])
FinPour
Fin
8
Les tableaux à deux dimensions
9
Exemples d’applications
10
Exemples : lecture d'une matrice
Algorithme SaisieMatrice
Var
n ,m : entier
i,j : entier
tableau A : réel
Début
Pour i allant de 0 à n-1
écrire ("saisie de la ligne ", i + 1)
Pour j allant de 0 à m-1
écrire ("Entrez l'élément de la ligne ", i + 1, " et de la colonne ", j+1)
lire (A[i][j])
FinPour
FinPour
Fin
11
Exemples : affichage d'une matrice
algorithme AfficheMatrice
Var
n ,m, i, j: entier
tableau A : réel
Début
Pour i allant de 0 à n-1
Pour j allant de 0 à m-1
écrire ("A[",i, "] [",j,"]=", A[i][j])
FinPour
FinPour
Fin
12
Exemples : somme de deux matrices
Algorithme SommeMatrices
Var
n, m, i, j : entier
tableau A, B ,C: réel
Début
Pour i allant de 0 à n-1
Pour j allant de 0 à m-1
C[i][j] ← A[i][j]+B[i][j]
FinPour
FinPour
Fin
13
Recherche dans un tableau/ recherche
séquentielle
Recherche de la valeur x dans un tableau T de N éléments :
14
Recherche dans un tableau/ recherche
dichotomique
15
Recherche dans un tableau/ recherche
dichotomique
L’algorithme de la recherche dichotomique :
Considérons le tableau T : 4 6 10 15 17 18 24 27 30
Si la valeur cherché est 20 alors les indices inf, sup et milieu vont
évoluer comme suit :
inf 0 5 5 6
sup 8 8 5 5
milieu 4 6 5
Si la valeur cherché est 10 alors les indices inf, sup et milieu vont
évoluer comme suit :
inf 0 0 2
sup 8 3 3
milieu 4 1 2
17
Les tris de données
INTRODUCTION
Trier : c’est ordonner un ensemble d’éléments, c’est à dire, les ranger en ordre
croissant ou décroissant:
Tris avancées
Tri rapide
…..
19
Tri par extraction
Cette méthode utilise en plus du tableau a trier un deuxième tableau dans lequel
elle place les éléments triés
Démarche :
Ensuite on cherche le plus petit élément parmi ceux non encore sélectionnées du
premier tableau et on le place dans le deuxième tableau,
A chaque fois qu’un élément est sélectionné, il est remplacé par une valeur
spéciale pour ne pas être re-sélectionnée une deuxième fois
20
Tri par extraction
Algorithme extration
Var
T,T1 : tableau[0..10] de reels;
N,int, i,j :entiers;
Max :reels;
Debut
Pour i ← 0 à N-1 faire
ind ← 0;
Pour j ← 0 à N-1 faire
Si T[ind]>T[j] alors
ind ← j;
FinSi
FinPour
T1[i] ← T[ind];
T[ind] ← max;
FinPour
Fin
21
Tri par extraction
Algorithme extration
N.B
Max: valeur spéciale, plus grande que tous les éléments du tableau (dans le
cas ou le tri est croissant).
avant de lancer l’algorithme de tri, on peut appliquer la recherche du plus
grand élément, lui ajouter 1 et l’utiliser comme Max (Max= Maximum(T)+1)
22
Tri par extraction
Exemple d’utilisation
N=6
T 15 2 24 -8 0 4
23
Tri par sélection
C’est l’une des méthodes les plus simples pour trier un tableau T[0],t[1]…..t[N-1]
Démarche :
Nous allons balayer tous les éléments pour chercher le plus petit élément que
nous échangeons avec t[0],
Nous répétons les mêmes structures en incrémentant l’indice I
Après N-1 répétitions du balayage et permutation, les éléments du tableau seront
triés
24
Tri par sélection : algorithme
Supposons que le tableau est noté T et sa taille N
25
Tri à bulles
La méthode consiste à faire plusieurs balayages du tableau en ordonnant les paires
d’éléments adjacents, de bas en haut.
Lors du deuxième balayage, on ne considère que la partie non triée du tableau pour
obtenir à la fin le deuxième plus grand élément sous le plus grand et ainsi de suite
jusqu’à ce que le tableau soit trié complètement.
26
Tri à bulles : algorithme
Algorithme Bulles
Var
i,j,temp :entire;
Debut
27
Tri à bulles : exemple
28
Tri à bulles : exemple
4 1 5 3 2
29