Structures itératives Les tableaux Les enregistrements
La structure répétitive (boucle)
● On utilise la structure répétitive si on veut répéter des mêmes actions (instructions) un certain nombre de fois.
● Ces actions seront exécutées jusqu'à ce qu'une condition soit remplie.
● La plupart des langages de programmation proposent trois types de structure répétitive.
● Le TantQue:
TantQue (condition) Faire
instructions
● Ce qui signifie: tant que la condition est vraie, on exécute les instructions.
Structure TANT QUE...
Remarque:
la vérification de la condition s'effectue avant les actions. Celles-ci peuvent donc ne jamais être exécutées.
● Algorithme qui demande à l'utilisateur de saisir un nombre entier positif et après il affiche tous les nombres entiers positifs inferieurs ou égale au nombre saisi par l'utilisateur.
Algorithme Affichage Variables n, i : entier Début
Ecrire("Donner un nombre entier positif:")
Lire(n)
i ← 0
TantQue(i <= n) Faire
Ecrire(i)
i ← i + 1
FTQ
Fin
● Le Faire TantQue:
Faire
instructions
TantQue (condition)
● Ce qui signifie: on exécute les instructions, tant que la condition est vraie.
Remarque:
la suite des instructions va s'exécuter au moins une fois.
Structure FAIRE...TANT QUE...
Remarque:
la vérification de la condition s'effectue après les actions. Celles-ci sont donc exécutées au moins une fois.
Algorithme rpttv Variables n, i : entier Début
Ecrire("Donner un nombre entier positif:")
Lire(n)
i ← 0
Faire
Ecrire(i)
i ← i + 1
TantQue(i <= n)
Fin
Structure REPETER...JUSQU'A...
Remarque:
la vérification de la condition s'effectue après les actions. Celles-ci sont donc exécutées au moins une fois.
● Algorithme qui demande à l'utilisateur de saisir un nombre entier positif et après il affiche tous les nombres entiers positifs inferieurs ou égale au nombre saisi par l'utilisateur.
Algorithme rpttv Variables n, i : entier Début
Ecrire("Donner un nombre entier positif:")
Lire(n)
i ← 0
Répéter
Ecrire(i)
i ← i + 1
Jusqu'à(i = n)
Fin
● Le Pour:
POUR variable DE valeur initiale A valeur finale
FAIRE
instructions
FinPour
● Structure répétitive avec un compteur.
● Le traitement s'arrête lorsque le compteur a atteint sa valeur finale.
Structure POUR
Pour indice de Val1 a Val2
Faire
Actions
FinPour
● Algorithme qui demande à l'utilisateur de saisir un nombre entier positif et après il affiche tous les nombres entiers positifs inferieurs ou égale au nombre saisi par l'utilisateur.
Algorithme nbrs_aff Variables n, i : entier Début
Ecrire("Donner un nombre entier positif:")
Lire(n)
Pour i De 0 A n Faire
Ecrire(i)
FinPour
Fin
Note:
Le traitement ne doit pas modifier la variable de boucle.
Choisir Pour - TantQue... - Faire...TantQue...
Les tableaux
● Regroupement de plusieurs variables de même type sous un même nom.
● Un tableau peut être un ensemble de valeurs entières, réelles, booléennes, caractères.
● Structure répétitive avec un compteur.
● Déclaration:
Tableau nom_du_tableau[longueur] : Type
● Exemples:
Tableau mot[10] : Caractere
Tableau notes[25] : Entier
● Ecrire(tab[4]): le contenu du tableau à l'indice 4 est affiché à l'écran.
● Lire(tab[2]): la valeur entrée par l'utilisateur est enregistrée dans le tableau à l'indice 2.
Attention:
● tab ← 7 - INTERDIT
● Ecrire(tab) - INTERDIT
● Lire(tab) - INTERDIT
● Ecrire un algorithme qui permet de saisir les éléments d'un tableau des entiers de taille 10.
Algorithme Saisie d'un tableau Variables i, Tableau tab[10] : entier Début
Pour i De 0 A 9 Faire
Ecrire("Donner l'élément" , i+1)
Lire(tab[i])
FinPour
Fin
Algorithme Afficher un tableau Variables i, Tableau tab[10] : entier Début
Pour i De 0 A 9 Faire
Ecrire("Donner l'élément" , i+1)
Lire(tab[i])
FinPour
Pour i De 0 A 9 Faire
Ecrire("tab[" i "] = " , tab[i])
FinPour
Fin
Tableaux à deux dimensions
● Généralement on utilise des tableaux à une dimension, mais il existe également des tableaux à deux dimensions.
● Exemple:
● Exemple:
● L'élément de la ième ligne et la jème colonne est représenté par mots[i][j]
Enregistrement
● Définition
Autres noms: Variable composé, Structure.
Enregistrement: ensemble d'infos de type différents.
1 info ⇒ un champ (désigné par un nom et un type).
● Déclaration
Type
<Nom de Type> = Enregistrement
<Nom de champ 1> : <Type de données>
<Nom de champ 2> : <Type de données>
...
<Nom de champ x> : <Type de données>
Fin Enregistrement
Algorithme Gestion d'abonnements Type
Abonne = Enregistrement