8. Tableaux

8.1. Tableaux unidimenяionnels
• Définition de tableaux unidimensionnels
• Affichage de tableaux unidimensionnels
• Acquisition de tableaux unidimensionnels
• Exemples et tâches avec tableaux unidimensionnels
8.2. Tableaux à 2 dimensions
• Définition de tableaux à 2 dimensions
• Affichage de tableaux à 2 dimensions
• Acquisition de tableaux à 2 dimensions
• Exemples et tâches avec tableaux à 2 dimensions

 
 

8.2. Tableau à 2 dimensions

• Définition de tableaux à 2 dimensions


Le tableau à deux dimensions est une collection d’un certain nombre d’éléments. Tous les éléments sont du même type. Chaque élément possède deux indices qui permettent d'effectuer un accès à cet élément. Le tableau à deux dimensions peut être représenté comme un tableau unidimensionnel, chaque élément duquel est de nouveau un tableau unidimensionnel. Par défaut, l'indice du premier élément d'un tableau en C/C++ est toujours zéro. Soit m un tableau unidimensionnel ayant 2 éléments qui sont de nouveau tableaux ayant trois éléments:

m -> m[0] -> m[0][0] aa m[0][1] aa m[0][2]
m -> m[1] -> m[1][0] aa m[1][1] aa m[1][2]

Par exemple, les données convenables d’être représentées par un tableau à deux dimensions peuvent être les éléments d’une matrice.

Définition de tableau à deux dimensions:

type_des_éléments aa variable_tableau [dimension1][dimension2];

type_des_éléments - chaque type standard ou préalablement défini;
variable_tableau - elle est désignée par identificateur;
dimension1 - expression entière constante ayant une valeur positive. Elle représente le nombre des lignes;
dimension2 - expression entière constante ayant une valeur positive. Elle représente le nombre des colonnes;
Chaque dimension est délimitéé par des crochets.

Exemple:

const int numberRows = 2;
const int numberColumns = 3;
double m[numberRows][numberColumns];

La définition suivante est aussi possible:

double m[2][3];

Le type des éléments peut être chaque type standard ou préalable défini.

Chaque élément du m est noté par le nom de la variable m suivi de deux indices délimités par crochets.
La définition du tableau m réserve 4 octets en mémoire dans lesquels s’inscrit l’adresse du premier élément m[0]. m[0] comporte l’adresse de m[0][0]. A son tour m[1] comporte l’adresse de m[1][0] etc. Pour tous les éléments du tableau le mémoire réservé dépend du type d’éléments.

Définition et initialisation d’un tableau, exemple:


double m[2][3]={ {1.1, 2.3, -3}, {4.3, -5.1, 6.4}};

Cette définition est équivanente à :


double m[2][3]={ 1.1, 2.3, -3, 4.3, -5.1, 6.4};

La définition initialise les éléments du tableau utilisant les valeurs entre accolades.

• Affichage de tableau à 2 dimensions

On affiche chaque élément séparément. Il est plus confortable d’organiser une boucle imbriquée à l’aide de l’instruction
for.
Exemple:
double m[2][3]; int i,j; for(i=0;i<2;i++) for(j=0;j<3;j++) cout << "m["<< i <<"]["<< j <<"] = "<< m[i][j]<< endl; • Acquisition de tableau à 2 dimensions

On saisit séparément chaque élément du tableau . Il est plus confortable d’utiliser une boucle imbriquée à l’aide de l’instruction
for.
Exemple: double m[2][3]; int i,j; for(i=0;i<2;i++) for(j=0;j<3;j++) { cout<<"Introduire m["<< i <<"]["<< j <<"] = "; cin>>m[i][j]; }