CHAPITRE 7 : LES TABLEAUX : LES BASES

Un tableau stocke plusieurs valeurs de meme type sous un seul nom. Chaque element est identifie par un indice.

1. Le principe

T
┌────┬────┬────┬────┬────┐
│ 12 │  8 │ 15 │  4 │ 20 │
└────┴────┴────┴────┴────┘
   1    2    3    4    5

T[1] = 12    T[2] = 8    T[3] = 15

2. Pourquoi un tableau ?

Sans tableau, gerer cent notes demanderait cent variables : note1, note2… Avec un tableau, une seule declaration suffit : Notes[1..100]. Le programme devient infiniment plus simple.

3. Declaration

Var
    T     : Tableau[1..N] de entier;
    Notes : Tableau[1..50] de reel;

4. Acces a un element

Lire(T[5]);
Ecrire(T[5]);

5. Lecture d'un tableau

Pour i de 1 a N Faire
    Lire(T[i]);
FinPour

Pour N = 4 et les entrees 5, 8, 2, 10 :

iContenu du tableau
15
25 8
35 8 2
45 8 2 10

6. Affichage

Pour i de 1 a N Faire
    Ecrire(T[i]);
FinPour

7. Le schema du parcours

Parcourir un tableau, c'est visiter chacune de ses cases. Le schema est toujours le meme :

Pour i de 1 a N Faire
    Traitement(T[i]);
FinPour

Seul le traitement change : afficher, additionner, comparer, modifier, rechercher.

8. Somme et moyenne

s <- 0;

Pour i de 1 a N Faire
    s <- s + T[i];
FinPour

moy <- s / N;

L'initialisation s <- 0 avant la boucle est indispensable.

9. Le maximum

max <- T[1];

Pour i de 2 a N Faire

    Si(T[i] > max) Alors
        max <- T[i];
    FinSi

FinPour

Pourquoi commencer a 2 ? Parce que la premiere case sert deja a initialiser le maximum : la comparer a elle-meme serait inutile.

10. Le minimum

min <- T[1];

Pour i de 2 a N Faire

    Si(T[i] < min) Alors
        min <- T[i];
    FinSi

FinPour

11. La recherche sequentielle

trouve <- FAUX;
i      <- 1;

TantQue(i <= N ET NON trouve) Faire

    Si(T[i] = x) Alors
        trouve <- VRAI;
    Sinon
        i <- i + 1;
    FinSi

FinTantQue

A la fin, trouve vaut VRAI ou FAUX. Noter l'usage de TANTQUE : on ne sait pas d'avance combien de cases seront examinees.

12. Compter les occurrences

cpt <- 0;

Pour i de 1 a N Faire

    Si(T[i] = x) Alors
        cpt <- cpt + 1;
    FinSi

FinPour

13. Copier un tableau

Pour i de 1 a N Faire
    B[i] <- T[i];
FinPour

14. Les erreurs frequentes

  • Oublier de declarer le tableau
  • Utiliser T[0] alors que le tableau commence a 1
  • Depasser N ou parcourir jusqu'a N+1
  • Oublier d'initialiser max, min ou somme

A retenir

  • Un tableau stocke plusieurs valeurs de meme type
  • Chaque element est repere par son indice
  • Le parcours se fait presque toujours avec POUR
  • Toujours verifier les bornes

Exercices d'application

Exercice 1. StatistiquesLisez 10 entiers dans un tableau, puis affichez leur somme, leur moyenne, le minimum et le maximum.
Exercice 2. RechercheLisez un tableau de N entiers et une valeur x. Indiquez si x est present et, si oui, a quelle position.
Exercice 3. Les positifsComptez combien d'elements du tableau sont strictement positifs, et calculez leur somme.

Cherchez avant de regarder la solution : c'est en butant sur les difficultes que l'on progresse.

Questions / Réponses

Aucune question. Soyez le premier à poser une question.
★ ★ ★ ★ ★
2 votes. Moyenne 5 sur 5.

Ajouter un commentaire

Anti-spam