Sequence4 Tableau

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 5

SUPPORT DE COURS |UVS| 2018 IDA

Licence 1
Informatique, Développement
d’Application

Cours : Introduction à l’Algorithme

Séquence 1 : Les Tableaux


Université Virtuelle du Sénégal, support de cours 2018

Les Tableaux

1 Notion de tableau
Soit un entier n positif.
Supposons qu’on veuille saisir n valeurs réelles afin de calculer leur moyenne, ou de trouver
leur minimum, ou de les afficher par ordre croissant.
Pour des valeurs petites de n, on peut déclarer n variables réelles pour résoudre le
problème. Mais si n est assez grand, on se rend compte que cela devient impropre,
fastidieux, voire impossible.
Il faudrait, dans ce cas, utiliser une variable permettant de représenter les n valeurs. Le type
de données de cette variable serait le type tableau.

Définition :
Un tableau est une collection séquentielle d’éléments de même type, où chaque élément
peut être identifié par sa position dans la collection. Cette position est appelée indice et doit
être de type scalaire.

Déclaration :
Pour déclarer un tableau, il faut donner :
- son nom (identificateur de la variable)
- ses bornes : la borne inférieure correspondant à l’indice minimal et la borne
supérieure correspondant à l’indice maximal.
- le type des éléments le composant.

Syntaxe :
type
nom = tableau[<indice minimum> .. <indice maximum>] de <type des
composants> ou
Variable
nom : tableau[<indice minimum> .. <indice maximum>] de <type des composants>

Exemple :
variable t : tableau[1..10] de réels

Schématiquement, on va représenter la variable t comme suit:


1 2 3 4 5 6 7 8 9 10

8.4 3.5 12 20 10 13.34 50 100 30.1 60.9


Université Virtuelle du Sénégal, support de cours 2018

Introduction à l’algorithmique

Dans la mémoire centrale, les éléments d’un tableau sont stockés de façon linéaire,
dans des zones contiguës.
Le tableau ci-dessus est de dimension 1, nous verrons un peu plus loin que l’on
peut représenter des tableaux à 2 dimensions, voire même plus.
L’élément n° I sera représenté par l’expression t[I].
Dans notre exemple, t[I] peut être traité comme une variable réelle. On dit que le tableau t
est de taille 10.

2 Création d’un tableau


La création d’un tableau consiste au remplissage des cases le composant. Cela peut
se faire par saisie, ou par affectation.
Par exemple, pour remplir le tableau t précédent, on peut faire :
t[1] := 8.4 ; t[2] := 3.5 ; … t[10] := 60.9 ;
Si on devait saisir les valeurs, il faudrait écrire :
Pour i := 1 à 10 faire
Ecrire(“saisir un élément:”)
lire(t[i] );
Fpour

3 Affichage d’un tableau


Afficher un tableau revient à afficher les différents éléments qui le composent. Pour cela, on
le parcourt (généralement à l’aide d’une boucle avec compteur) et on affiche les éléments
un à un.
Pour i := 1 à 10 faire
Ecrire(t[i])
Fpour

4 Traitement d’un tableau


Après avoir créé un tableau, on peut y effectuer plusieurs opérations comme le calcul de la
somme ou de la moyenne des éléments, la recherche du plus petit ou du grand élément du
tableau, le test d’appartenance d’un objet au tableau, …
Pour la suite, on considère un tableau d’entiers t déclaré comme suit :
Variable t : Tableau[1 .. n]: Entier ;

4.1 Somme des éléments d’un tableau


On effectue la somme des éléments du tableau t, le résultat est dans la variable S :
S ←-0 ;
Pour i<--1 à n faire
S <--S + t[i];
Ecrire(“la somme des éléments de t est:”, S);
Université Virtuelle du Sénégal, support de cours 2018

Introduction à l’algorithmique

4.2 Minimum d’un tableau


On cherche le plus petit élément du tableau t, le résultat est dans la variable min :
min ←- t[1] ;
Pour i<--1 à n faire
Sit[i] < min Alors
min ←-t[i];
Fpour
Ecrire(“Le minimum des éléments de t est:”, min) ;

4.3 Test d’appartenance


On cherche si l’entier x appartient à t, le résultat est mis dans la variable
booléenne appartient :
appartient ←-false
Pour i<--1 à n faire
si t[i]=x Alors
appartient := VRAI;
SI appartient Alors
Ecrire(‘x appartient à t’)
Sinon
Ecrire(‘x n’’appartient pas à t’);

On remarque que l’on peut arrêter les itérations (la recherche) si l’on rencontre l’élément
x dans t. Pour cela, il faut utiliser une boucle Tant Que ou Répéter:

i ←- 1;
Tant que (t[i]<>x) et (i<=n) Faire
i←-i+1;
Si i>n Alors
Ecrire(“x n’’appartient pas à “’)
Sinon
Ecrire(‘x appartient à t’);

i ←--0 ;
Répéter
i←-i+1;
Jusqu’à (t[i]=x) ou (i>n);
Si i>n Alors
Ecrire (‘x n’’appartient pas à t’)
Sinon
Ecrire(‘x appartient à t’);
Université Virtuelle du Sénégal, support de cours 2018

Introduction à l’algorithmique

Dans les deux cas, si x appartient à t, la valeur de i est l’indice de la case qui le contient.

5 Tableaux de caractères

Notion de chaîne de caractères


Une chaîne de caractères est soit une chaîne vide, soit un caractère suivi d’une chaîne de
caractères ; en un mot c’est une collection de caractères. Exemples : "Bonjour", "L’UVS
se situe à la VDN", "A", "2017"
La plupart des langages de programmation, Pascal notamment, disposent d’un type chaîne
de caractères et d’un ensemble de fonctions prédéfinies permettant de traiter les chaînes de
caractères. Ces fonctions permettent de calculer la longueur d’une chaîne, de concaténer
deux chaînes, d’extraire une sous-chaîne, de comparer deux chaînes, etc.
Il faut noter qu’une chaîne de caractères peut être traitée comme un tableau de
caractères. En Algorithme, une variable de type chaîne est une séquence de caractères de
longueur variable au cours de l’exécution et une taille prédéfinie entre 1 et 255.

Exemple :
variable s : chaine; (* 255 caractères sont alors réservés *)
s10 : chaîne[10] ; (* seuls 10 caractères sont réservés *)

On peut appliquer les opérateurs suivants sur des variables de type Chaîne :
+, =, <>, <=, >=, <, >.
Les fonctions prédéfinies les plus usuelles sont :
· length(s :Chaîne) : entier;
retourne la longueur courante de s.
· copy(s : Chaine ; p : entier ; l :entier): Chaine;
renvoie une chaîne constituée de l caractères à partir de la position p.
· concat(s1,s2 : Chaine): Chaine ;
renvoie la chaîne résultant de la concaténation de s1 et de s2.
· pos (ssch : Chaîne; ch : Chaine): Entier;
renvoie la position du premier caractère de la sous-chaîne ssch dans la chaîne ch ; si la
sous-chaîne ne se trouve pas dans la chaîne, elle renvoie 0.

Vous aimerez peut-être aussi