Pascal - Tableaux
Le langage de programmation Pascal fournit une structure de données appelée tableau, qui peut stocker une collection séquentielle de taille fixe d'éléments du même type. Un tableau est utilisé pour stocker une collection de données, mais il est souvent plus utile de considérer un tableau comme une collection de variables du même type.
Au lieu de déclarer des variables individuelles, telles que nombre1, nombre2, ... et nombre100, vous déclarez une variable de tableau telle que des nombres et utilisez les nombres [1], les nombres [2] et ..., les nombres [100] pour représenter variables individuelles. Un élément spécifique d'un tableau est accessible par un index.
Tous les tableaux sont constitués d'emplacements de mémoire contigus. L'adresse la plus basse correspond au premier élément et l'adresse la plus élevée au dernier élément.
Veuillez noter que si vous voulez un tableau de style C à partir de l'index 0, il vous suffit de démarrer l'index à partir de 0, au lieu de 1.
Déclaration de tableaux
Pour déclarer un tableau en Pascal, un programmeur peut soit déclarer le type puis créer des variables de ce tableau, soit déclarer directement la variable tableau.
La forme générale de la déclaration de type d'un tableau à une dimension est -
type
array-identifier = array[index-type] of element-type;
Où,
array-identifier - indique le nom du type de tableau.
index-type- spécifie l'indice du tableau; il peut s'agir de n'importe quel type de données scalaire sauf réel
element-type - spécifie les types de valeurs qui vont être stockées
Par exemple,
type
vector = array [ 1..25] of real;
var
velocity: vector;
Maintenant, la vitesse est un tableau variable de type vectoriel, qui est suffisant pour contenir jusqu'à 25 nombres réels.
Pour démarrer le tableau à partir de 0 index, la déclaration serait -
type
vector = array [ 0..24] of real;
var
velocity: vector;
Types d'indice de tableau
En Pascal, un indice de tableau peut être de n'importe quel type scalaire comme, entier, booléen, énuméré ou sous-intervalle, sauf réel. Les indices de tableau peuvent également avoir des valeurs négatives.
Par exemple,
type
temperature = array [-10 .. 50] of real;
var
day_temp, night_temp: temperature;
Prenons un autre exemple où l'indice est de type caractère -
type
ch_array = array[char] of 1..26;
var
alphabet: ch_array;
L'indice peut être de type énuméré -
type
color = ( red, black, blue, silver, beige);
car_color = array of [color] of boolean;
var
car_body: car_color;
Initialisation des tableaux
En Pascal, les tableaux sont initialisés par affectation, soit en spécifiant un indice particulier, soit en utilisant une boucle for-do.
Par exemple -
type
ch_array = array[char] of 1..26;
var
alphabet: ch_array;
c: char;
begin
...
for c:= 'A' to 'Z' do
alphabet[c] := ord[m];
(* the ord() function returns the ordinal values *)
Accès aux éléments de la baie
Un élément est accessible en indexant le nom du tableau. Cela se fait en plaçant l'index de l'élément entre crochets après le nom du tableau. Par exemple -
a: integer;
a: = alphabet['A'];
L'instruction ci-dessus prendra le premier élément du tableau nommé alphabet et affectera la valeur à la variable a.
Voici un exemple, qui utilisera tous les trois concepts mentionnés ci-dessus à savoir. déclaration, affectation et accès aux tableaux -
program exArrays;
var
n: array [1..10] of integer; (* n is an array of 10 integers *)
i, j: integer;
begin
(* initialize elements of array n to 0 *)
for i := 1 to 10 do
n[ i ] := i + 100; (* set element at location i to i + 100 *)
(* output each array element's value *)
for j:= 1 to 10 do
writeln('Element[', j, '] = ', n[j] );
end.
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
Element[10] = 110
Pascal Arrays en détail
Les tableaux sont importants pour Pascal et devraient avoir besoin de beaucoup plus de détails. Voici quelques concepts importants liés au tableau qui devraient être clairs pour un programmeur Pascal -
Sr. Non | Concept et description |
---|---|
1 | Tableaux multidimensionnels Pascal prend en charge les tableaux multidimensionnels. La forme la plus simple du tableau multidimensionnel est le tableau à deux dimensions. |
2 | Tableau dynamique Dans ce type de tableaux, la longueur initiale est égale à zéro. La longueur réelle du tableau doit être définie avec la normeSetLength fonction. |
3 | Tableau emballé Ces tableaux sont remplis de bits, c'est-à-dire que chaque caractère ou valeur de vérité est stocké dans des octets consécutifs au lieu d'utiliser une unité de stockage, généralement un mot (4 octets ou plus). |
4 | Passer des tableaux à des sous-programmes Vous pouvez transmettre à un sous-programme un pointeur vers un tableau en spécifiant le nom du tableau sans index. |