Académique Documents
Professionnel Documents
Culture Documents
Définition
« Les tableaux sont une suite de variables de même type, situées
dans un espace contigu en mémoire. »
Tableau
Variable
5 160
adresse
adresse 153 123 161
10 Valeur
33 162
7 163
89
LES TABLEAUX
Remarques:
• Lorsqu'un tableau est créé, il prend un espace contigu
en mémoire : les cases sont les unes à la suite des
autres.
• Toutes les cases d'un tableau sont du même type. Ainsi,
un tableau de int contiendra uniquement des int, et pas
autre chose.
• Les cases (espace mémoire) sont de même taille. La
taille de chacune des cases est conditionnée par le
type de donnée que le tableau contient.
90
Déclaration d’un tableau
92
Déclaration d’un tableau
93
Déclaration d’un tableau
94
Initialisation d’un tableau
Remarque:
Les éléments du tableau ne sont absolument pas initialisés : ce
serait une erreur de croire qu’ils sont tous à zéro juste après
la création du tableau !
Pour accéder à la case d’indice i, on utilisera tab [i].
Exemple d’utilisation :
• tab [3] = 12; met la valeur 12 dans la case numéro 3 du
tableau tab.
• cout<<tab [3]; affiche la valeur contenue dans la case
numéro 3 du tableau tab.
• tab [3] = tab [3] + 2 ; ajoute 2 à la valeur contenue dans la
case numéro 3 du tableau. Puisqu’elle contenait auparavant
la valeur 12, elle contiendra à présent la valeur 14.
96
Initialisation d’un tableau
Exemple:
Ecrire un programme qui demande à l’utilisateur de
remplir chacune des 10 cases du tableau d’entiers. Puis,
affiche le tableau complet à l’écran.
97
Initialisation d’un tableau
int main () {
int tab [10] ; /* un tableau de 10 entiers est initialisé */
int i ;
/* On demande à l’utilisateur de remplir les 10 cases du tableau */
for (i = 0 ; i < 10 ; i ++) {
cout << "Quelle valeur pour la case " << i+1 <<" ? ";
cin>>tab [i];
}
/* On affiche à présent le tableau complet */
cout << "Voici le tableau que vous avez rempli ";
for (i = 0 ; i < 10 ; i++) {
cout << tab [i] ;
}
return 0 ;
}
98
Initialisation d’un tableau
Exercice:
Ecrire un programme qui lit les notes de N élèves d'une classe
dans un devoir et les mémorise dans un tableau NOTES de
dimension N.
* Rechercher et afficher:
- la note maximale,
- la note minimale,
int main(){
int N, i;
cout << « Donnez la dimension du tableau : ";
cin>>N ;
float Notes[N], Mini=20, Maxi=0, Somme=0;
for (i=0; i<N; i++)
{
cout << " Donnez la note de l’étudiant: " << i+1;
cin>> Notes[i];
100
Initialisation d’un tableau
101
Recherche d'une valeur dans un tableau
102
Recherche d'une valeur dans un tableau
int main()
{
/* Déclarations */
int VAL; /* valeur à rechercher */
int POS; /* position de la valeur */
int N; /* dimension */
int i; /* indice courant */
103
Recherche d'une valeur dans un tableau
/* Saisie des données */
cout << "Dimension du tableau (max.50) : ";
cin>>N ;
int A[N]; /* déclaration d’un tableau de taille N */
for (i=0; i<N; i++)
{
cout << " Donnez l’ élément: " << i+1;
cin>> A[i];
}
cout << " Donnez la valeur de l’élément à rechercher : ";
cin>> VAL ;
104
Recherche d'une valeur dans un tableau
/* Recherche de la position de la valeur */
POS = -1;
for (i=0 ; (i<N)&&(POS==-1) ; i++)
if (A[i]==VAL)
POS=I;
/* Edition du résultat */
if (POS==-1)
cout << "La valeur recherchée ne se trouve pas dans le tableau.";
else
cout << "La valeur " << VAL << " se trouve à la position " <<POS;
return 0;
}
105
Trier un tableau
106
Trier un tableau
107