8. Tableaux

8.1. Tableaux unidimensionnels
• 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. Tableaux


Le tableau est une collection ordonnée d’objets, en nombre fini et de même nature. On peut ainsi concevoir des tableaux d’entiers, de flottants, de caractères, mais aussi des tableaux de tableaux (tableaux à plusieurs dimensions) ou des tableaux contenant d’autres objets définis par le programmeur. Chaque élément d’un tableau est repéré par sa position ou indice. Il est possible grâce à cet indice d’accéder à n’importe quel élément d’un tableau. Si les éléments sont repérés par un indice le tableau s’appelle tableau unidimensionnel. Si les indices qui repèrent les éléments sont deux on parle de tableaux à deux dimensions.

8.1. Tableaux unidimensionnels

• Définition de tableaux unidimensionnels


type_des_éléments aa variable_tableau [nombre_d'éléments];

type_des_éléments - chaque type standard ou préalable défini;
variable_tableau - désignée par identificateur;
nombre_d’éléments - expression constante entière ayant une valeur positive. L’expression est délimitée par des crochets.

Exemples:

int x[10];
double price[20];
enum color{red, blue, green}m[5];

La variable х est un tableau unidimensionnel. Elle est composée de 10 éléments du type
int: x[0], x[1], x[2],…,x[9]. Par analogie, la variable price est composée de 20 éléments - price[0], price[1],…,price[19]. Chaque élément peut mémoriser une valeur du type double. Le tableau m est composé de 5 éléments: m[0],..,m[4]. Ils peuvent mémoriser des valeurs du type color.
Après avoir défini un tableau on réserve 4 octets dans le mémoire où l’adresse du premier élément du tableau est enregistré. Les autres éléments du tableau se disposent successivement après le premier élément.

Définition et initialisation d’un tableau:

type_des_éléments aa variable_tableau [nombre d'éléments] = { valeur1, valeur2,...};

Exemple:
double q[5]={1.8, 2, 3.8, 5.5, 6};

Après cette définition les éléments du tableau q prennent des valeurs suivantes:
q[0] prend la valeur 1.8, q[1] - a 2, q[2] – a3.8, q[3] – a5.5, q[4] – a6.0.

Les indices des éléments du tableau sont des expressions entières ayant une valeur constante positive. En C/C++, l'indice du premier élément d'un tableau est toujours 0.

• Affichage des tableaux unidimensionnels

On affiche chaque élément séparément. Il est plus confortable d’organiser une boucle à l’aide de l’instruction
for.
Exemple:
double q[5] ={2, 4, -1.8, 6, 3}; ………… for( int i=0; i<5; i++) cout << "q[" << i << "] = " << q[i] << endl; } L’affichage cout << q est également possible, mais on va afficher l’adresse d’élément q[0]. Comme on avait dit, le nom du tableau comporte l’adresse du premier élément. C’est la cause pour laquelle les opérations comme affectation, addition et comparaison entre tableaux ne sont pas possibles. L’opération cin>>q également n’est pas correcte.

• Acquisition des tableaux unidimensionnels

Cela se fait pour chaque élément séparément:
cin >> q[0]; cin >> q[1];. Il est plus confortable d’organiser une boucle à l’aide de l’instruction for.
Exemple:
double q[5]; for(int i=0; i<5; i++) { cout << " Introduire q[" << i << "] = "; cin >> q[i]; }