Tableaux Algorithme
Tableaux
- Lorsque les données sont nombreuses et de même type, afin d'éviter de multiplier le nombre des variables, on les regroupe dans un tableau
- Le type d'un tableau précise le type (commun) de tous les éléments.
Syntaxe :
<nomTab> : tableau [borne_inf ... borne_sup] : <TypeTab>
- En général, nous choisirons toujours la valeur 0 pour la borne inférieure dans le but de faciliter la traduction de l'algorithme vers les autres langages (C, Java, ...). Pour un tableau de 10 entiers, on aura :
Exemple
tabVal : tableau [0..9] : entier
Les tableaux à une dimension (vecteurs)
- Ce tableau est de longueur 10. Chacun des dix nombres du tableau est repéré par son rang, appelé indice
- Pour accéder à un élément du tableau, il suffit de préciser entre crochets l'indice de la case contenant cet élément.
- Pour accéder au 5ème élément (22), on écrit : Tab[4]
- Les instructions de lecture, écriture et affectation s'appliquent aux tableaux comme aux variables.
x ← Tab[0] (x=45) Tab[6] ← 43
Les tableaux à deux dimensions ( matrices)
- Lorsque les données sont nombreuses et de même nature, mais dépendent de deux critères différents, elles sont rangées dans un tableau à deux entrées.
- Ce tableau a 3 lignes et 7 colonnes. Les éléments du tableau sont repérés par leur numéro de ligne et leur numéro de colonne.
Tab[1, 4] = 38
La variable Tab[i, j] s'appelle l'élément la ligne i et la colonne j (indice i et j du tableau Tab).
Syntaxe
<nomTab> : tableau [binf1 ... Bsup1; binf2 ... Bsup2] : <TypeTab>
Les tableaux peuvent avoir n dimensions.
Traitements opérant sur des tableaux
- Créer des tableaux
- Ranger des valeurs dans un tableau
- Récupérer, consulter des valeurs rangées dans un tableau
- Rechercher si une valeur est dans un tableau
- Mettre à jour des valeurs dans un tableau
- Modifier la façon dont les valeurs sont rangées dans un tableau (par exemple : les trier de différentes manières)
- Effectuer des opérations entre tableaux : comparaison de tableaux, multiplication,...
Parcours complet d'un tableau
- Les répétitions inconditionnelles sont le moyen le plus simple de parcourir complètement ou partiellement un tableau.
Syntaxe
Pour une dimension :
Pour cpte de 0 à Taille(Tab)-1 [par 1] faire
Utiliser Tab[cpte] pour saisie, affichage, affectation, calcul…
FinPour
Pour deux dimension :
Pour ligne de 0 à nbLigne-1 [par 1] faire
Pour colonne de 0 à nbColonne-1 [par 1] faire
Utiliser Tab[ligne,colonne] pour saisie, affichage, …
FinPour
Exemple
Dans l'exemple suivant, le programme initialise un à un tous les éléments de deux tableau différents:
Algorithme : initialisation tableaux
Variable : i , j :entier
Tab : tableau de [0…n-1] :entier
Mat : tableau de [0…n-1 ; 0…n-1] :entier Constante : n ← 20 : entier
début
pour i de 0 à n-1 faire
tab[i] ← i
pour j de 0 à n-1 faire
Mat[i , j] ← i*i
finpour
fin
Ajouter un commentaire
Veuillez vous connecter pour ajouter un commentaire.
Pas encore de commentaires.