Les tableaux



--Téléchargez Les tableaux en PDF --


Les tableaux

Maintenant que nous avons vu les quatre structures logiques de base, nous pouvons (enfin) nous attaquer à quelque chose de plus sérieux.

Imaginons que nous souhaitions développer un programme qui calcule la moyenne des étudiants d’une classe de 12 personnes. La seule solution à l’heure actuelle consiste à déclarer 12 variables, et à poser douze fois un INPUT. Nous devrions écrire une atrocité du genre :

Bon, dans ce cas-ci, ça peut encore se faire, mais imaginons que la classe passe à 30 étudiants, ou même plus (quelques milliers ?). Cerise sur le gâteau, si en plus on est dans une situation où l’on ne peut pas savoir à l’avance combien de valeurs il y aura à traiter, là on a un souci.

C’est pourquoi la programmation nous permet de rassembler toutes ces variables en une seule, au sein de laquelle chaque valeur sera désignée par un numéro. En bon français, cela donnerait donc quelque chose du genre « la note numéro 1 », « la note numéro 2 », « la note numéro 8 ». C’est largement plus pratique, vous vous en doutez.

Un ensemble de valeurs portant le même nom de variable et repérées par un nombre, s’appelle un tableau, ou encore une variable indicée. Le nombre qui, au sein d’un tableau, sert à repérer chaque valeur s’appelle – ô surprise – l’indice. Chaque fois que l’on doit désigner un élément du tableau, on fait figurer le nom du tableau, suivi de l’indice de l’élément, entre parenthèses ou entre crochets, selon le langage.

Notation et utilisation algorithmique

Dans notre exemple, nous créerons donc un tableau appelé Note. Chaque note individuelle (chaque élément du tableau Note) sera donc désignée Note(0), Note(1), etc. Eh oui, attention, les indices des tableaux commencent généralement à 0, et non à 1.

Un tableau doit être déclaré comme tel, en précisant le nombre et le type de valeurs qu’il contiendra (la déclaration des tableaux est susceptible de varier d’un langage à l’autre. Certains langages réclament le nombre d’éléments, d’autre le plus grand indice… C’est donc une affaire de conventions).

En nous calquant sur les choix les plus fréquents dans les langages de programmations, nous déciderons ici arbitrairement et une bonne fois pour toutes que :

  • les « cases » sont numérotées à partir de zéro, autrement dit que le plus petit indice est zéro.
  • lors de la déclaration d’un tableau, on précise la plus grande valeur de l’indice (différente, donc, du nombre de cases du tableau, puisque si on veut 12 emplacements, le plus grand indice sera 11). Au début, ça déroute, mais vous verrez, avec le temps, on se fait à tout, même au pire.

En algorithmique, nous écrirons le tableau sous la forme :

On peut créer des tableaux contenant des variables de tous types : tableaux de numériques, bien sûr, mais aussi tableaux de caractères, tableaux de booléens, tableaux de tout ce qui existe dans un langage donné comme type de variables. Par contre, hormis dans quelques rares langages, on ne peut pas faire un mixage de types différents de valeurs au sein dun même tableau.

L’énorme avantage des tableaux, cest quon va pouvoir les traiter en faisant des boucles. Par exemple, pour effectuer notre calcul de moyenne, cela donnera par exemple :

.

Dans un tableau, la valeur d’un indice doit toujours :

  • être égale au moins à 0 ;
  • être un nombre entier ;
  • être inférieure ou égale au nombre d’éléments du tableau (moins 1, si l’on commence à zéro).

Les tableaux multi-dimensionnés

Prenons l’exemple suivant : nous souhaitons désormais faire la moyenne de 3 classes de 12 étudiants. Nous pourrions utiliser 3 tableaux, ou créer un tableau multi-dimensionné, c’est-à-dire ajouter des indices aux indices.

Ajouter un indice à un tableau s’appelle ajouter une dimension à un tableau. Avec une dimension, le tableau peut se représenter en ligne ou en colonne. Avec deux dimensions, le tableau sera représenté comme un tableau à double entrée. Avec 3 dimensions, le tableau peut être représenté sous forme de cube.

Mais on peut dimensionner des tableaux de plus de 3 dimensions. C’est très difficile de se représenter un tableau de plus de 3 dimensions, à part créer un tableau de tableaux.

L’autre problème du tableau multi-dimensionné, c’est sa place en mémoire. Chaque case du tableau occupe une place en mémoire, de la taille du type indiqué.

Exercices

Exercice 1

Écrire un algorithme qui déclare et remplisse un tableau de 7 valeurs numériques en les mettant toutes à zéro.

Exercice 2

Écrire un algorithme qui déclare et remplisse un tableau contenant les six voyelles de l’alphabet latin.

Exercice 3

Écrire un algorithme qui déclare un tableau de 9 notes, dont on fait ensuite saisir les valeurs par l’utilisateur.

Exercice 4

Que produit l’algorithme suivant ?

Peut-on simplifier cet algorithme avec le même résultat ?

Exercice 5

Que produit l’algorithme suivant ?

Peut-on simplifier cet algorithme avec le même résultat ?

Exercice 6

Que produit l’algorithme suivant ?

Exercice 7

Écrivez la fin de l’algorithme 3 afin que le calcul de la moyenne des notes soit effectué et affiché à l’écran.