February 6, 2017 | Author: SîdïMôhâmèdBën | Category: N/A
1
Algorithmique TOUHTOUH Samira Ecole Nationale des Sciences Appliquées d’El Jadida
[email protected]
2
Plan Introduction Informatisation d’un problème : Langage algorithmique Les variables Les constantes Fonctions d’entrée-sortie Les structures Les tableaux Les fonctions
Les fichiers
3
Plan Introduction Informatisation d’un problème : Langage algorithmique Les variables Les constantes Fonctions d’entrée-sortie Les structures de contrôle Les fonctions Les tableaux
Les fichiers
4
I. Introduction Introduction à l’algorithme • Histoire Le mot algorithme vient du mot latinisé du mathématicien « AlKhawarismi », après la traduction du livre « kitâb- aljabr wa almuqâbala » par Gherardo di cremona sous le titre « Dixit Algorismi ».
• Définition générale Une séquences d’instructions logique à suivre pour obtenir un résultat donné.
5
Exemple 1 : Comment accéder à L’ENSA? 1. 2. 3. 4. 5.
Réussir le bac Candidater Passer le concours Réussir le concours Déposer un dossier d’inscription
Exemple 2 : Préparer un café au lait 1. 2. 3.
Préparer le café Préparer le lait Mélanger les deux
6
L’ordre des opérations a son importance, mais dans certains cas plusieurs ordres sont possibles. Parfois, il faut décomposer les actions trop complexes. Exemple : Préparer un café au lait 1. 2. 3.
Préparer le café Préparer le lait Mélanger les deux
Etape élémentaire : Préparer le café 1. Préparer la cafetière 2. Remplir d’eau 3. Mettre le filtre 4. Mettre le café 5. Brancher la cafetière 6. Lancer la cafetière
7
En informatique : Procédure de calcul bien défini qui prend en entrée une valeur, ou un ensemble de valeurs, et qui donne en sortie une valeur, ou un ensemble de valeurs.
Exemple :
Algorithme d’Euclide Calculer le PGCD de deux entiers a et b.
1.
Ordonner a et b tel que a≥b
2.
Calculer leur différence
3.
Remplacer a par c c
a-b
8
Exécuter avec a=40 et b=12 Etape1:a40
b12
Etape2:ca b 28 Etape3: a28
b 12
Etape4:ca b 16 Etape5:a16
b 12
Etape6 :ca b 4 Etape7:a12
b 4
Etape8:ca b 8 Etape9:a8
b 4
Etape9:ca b 4 Etape10:a4
b4
Etape11:a b 4
Fin
9
Exemple 2 Exécuter avec a=100 et b=40
10
Un algorithme est dit correct si, pour chaque instance en entrée, il se termine en produisant la bonne sortie.
Un algorithme incorrect risque de ne pas se terminer pour certaines instances en entrée, voire de se terminer sur une réponse autre que celle désirée.
Un algorithme peut être spécifié en langage humain ou en langage informatique. L’unique obligation est que la spécification fournisse une description précise de la procédure de calcul à suivre.
11
Plan Introduction Informatisation d’un problème : Langage algorithmique Les variables
Algorithme Les constantes Les structures Les fonctions
12
II. Langage algorithmique
Énoncé du problème
Langage naturel
Algorithme
Langage algorithmique
Programme
Langage de programmation
13
Le langage algorithmique est différent du langage de programmation. Langage de programmation
Langages de bas niveau Liés au processeur
CC++
Langages de haut niveau Langages évolués
Java
14
Le langage algorithmique exprime les instructions résolvant un problème donné indépendamment des particularités d’un langage de programmation. En générale on utilise deux types de notations pour représenter les algorithmes:
• L’organigramme • Le pseudo-code
15
L’organigramme est un schéma fonctionnel qui présente les différentes parties d’un algorithme les unes à la suite des autres en utilisant des symboles graphiques pour visualiser l’exécution de l'algorithme et le cheminement des données.
16
Exemple : somme de deux nombres A et B
L’écriture d’un algorithme avec un organigramme est rapidement abandonnée. La lisibilité devient rapidement difficile pour les algorithmes assez long.
17
le pseudo-code est purement conventionnel, aucune machine n’est censée le reconnaître. Exemple : Somme de deux nombres A et B
Algorithme somme_de_deux_nombres Variables A, B, somme en entier Début Lire A Lire B somme A+B Ecrire ‘’ La somme de A et B est : ’’, somme Fin
18
Les différents éléments d’un algorithme sont :
• Données : ce qui doit être donné à l’algorithme • Résultats : ce que doit produire l’algorithme • L’algorithme : les grandes étapes des traitements et calculs
19
Exemple : Calculer le PGCD de a et b.
Données
Données : a et b deux entiers positifs
Algorithme
Résultats
Résultat : PGCD de a et b
20
Structure d’un algorithme Nom de l’algorithme
// partie en-tête qui précise le nom de l’algorithme
Déclaration des variables // partie déclaration des variables
Début
// partie traitement des données
Algorithme (définir les actions à suivre pour résoudre un problème donné) Fin
21
Exemple 1 : Ecrire un algorithme qui permet d’afficher « Bonjour ». Algorithme algo-bonjour
Début écrire ( ‘’bonjour‘’ ); Fin
22
Exemple 2 : Ecrire un programme qui demande un nombre à l’utilisateur, puis qui calcule et affiche le carré de ce nombre, Algorithme carré-de-deux-nombres Variables nb, carr en Entier Début Ecrire ‘’Entrez un nombre:’ ’ Lire nb carr nb*nb Ecrire ‘’son carré est :’’ , carr Fin
1
Algorithmique TOUHTOUH Samira Ecole Nationale des Sciences Appliquées d’El Jadida
[email protected]
2
Plan Introduction Informatisation d’un problème : Langage algorithmique Les variables
Les constantes Les structures Les fonctions Les tableaux Les fichiers
3
II. Les variables • Dans un programme informatique, on va avoir en permanence besoin de stocker provisoirement des valeurs. • Il peut s’agir de données issues du disque dur, fournies par l’utilisateur (frappées au clavier), etc..
• Ces données peuvent être de plusieurs types des nombres, du texte, etc. • Pour stocker une information au cours d’un programme, on utilise une variable.
• Pour employer une image, une variable est une boîte, que le programme (l’ordinateur) va repérer par une étiquette. • Une variable désigne un emplacement mémoire désigner par une adresse binaire qui permet de stocker une valeur.
4
Déclaration et utilisation des variables (les données) • La première chose à faire avant de pouvoir utiliser une variable est de créer la boîte et de lui coller une étiquette. Ceci se fait tout au début de l’algorithme, avant même les instructions proprement dites. C’est ce qu’on appelle la déclaration des variables. Une variable est désignée par : Un nom unique qui la désigne Un type de définition unique Une valeur attribuée et modifiée au cours du déroulement de l’algorithme.
5
Le nom-le type-la valeur Nom d’une variable. • Le nom d’une variable permet de l’identifier de manière unique au cours de l’algorithme. Les règles à respecter pour nommer les variables : • Le nom d’une variable commence par une minuscule. • Le nom d’une variable ne comporte pas d’espace, • Si le nom de la variable est composé de plusieurs mots, il faut faire commencer chacun deux par une majuscule et ne pas faire figurer de traits d’union.
6
Les variables utilisées au cours de l’exécution de l’algorithme sont déclarées après le nom de l’algorithme. Il suffit d’indiquer le nom de la variable suivi de son type, séparés par deux points « : », La structure d’un algorithme (déclarant une variable nommé indice et de type entier) est la suivante :
Algorithme nom-de-l’algorithme
// partie en-tête
Variables : indice : entier
// partie des déclarations des variables
Début
// partie traitement
Bloc d’instructions Fin
7
Exemple : Calculer et écrire le double d’un nombre réel donné (exemple : 7). • L’algorithme nous informe qu’un nombre réel est donné (exemple 7) et que un autre nombre réel sera calculé (7x2 = 14) puis affiché. • Introduisons donc deux variables associées respectivement à la donnée et au résultat. La structure de l’algorithme est la suivante :
Algorithme double Variables : nombre, résultat : réel Début nombre résultat écrire résultat Fin
7 nombrex2
8
• Déroulement de l’exemple : Algorithme double Variables : nombre, résultat : réel
nombre = ?
résultat =?
Début
nombre =?
résultat=?
nombre
7
nombre = 7
résultat = ?
résultat
nombrex2
nombre = 7
résultat = 14
écrire résultat Fin
résultat = 14 Les variables n’existent plus
9
• L’algorithme se déroule de manière séquentielle et ligne après ligne.
• Au départ, lors de la déclaration, les valeurs sont inconnues : leur valeur est indiquée par « ? ».
• L’existence des variables n’a de sens que le temps de l’exécution de l’algorithme.
10
Types des variables Type réel - le type entier • Les variables de types numériques utilisées en algorithme ont comme domaine usuels ceux fournis par les mathématiques : réel et entier. • Le type de codage choisi pour un nombre va déterminer :
- Les valeurs maximales et minimales des nombres pouvant être stockés dans la variable. - La précision de ces nombres (dans le cas de nombres (décimaux)
11
• Les langages offrent plusieurs types numériques, le tableau cidessous présente les plus rencontrés : Type numérique
Plage
Byte (octet)
O à 255
Entier simple
-32 768 à 32 767
Entier long
-2 62 147 483 à 2 147 483 647
Réel simple
-3,4x1038 à -1,4x1045 pour les valeurs négatives 1,4x10-45 à 3,4x1038 pour les valeurs positives
Réel double
1,79x10308 à -4,95x10-324 pour les valeurs négatives 4,94x10-324 à 1,79x 10308 pour les valeurs positives
• Pourquoi ne pas déclarer toutes les variables numériques en réel
double?
12
Expressions et opérateurs
• Une expression est un ensemble de valeurs, reliées par des opérateurs, et équivalent à une seule valeur. • Un opérateur est un symbole d’opération • Une expression est soit : une constante une variable une opération
13
• Une opération est l'association d'un operateur avec ses opérandes qui permet d'effectuer un calcul.
• Les opérations utilisables sur les éléments de type entier ou réel les opérations arithmétiques classiques : l’addition (+), la soustraction (), le produit (x) et la division (/).
• On pourra aussi utiliser les opérateurs de comparaison classiques : < > # = ≥ ≤
14
• Deux opérations sont spécifiques aux entiers : la division entière DIV et le modulo MOD.
• L’opération DIV entre deux entiers retourne le résultat entier de leur division.
• L’opération MOD entre deux entiers retourne le reste de leur division.
• Exemple : 15 DIV 2 vaut 7 et 15 MOD 2 vaut 1, en effet, 15 = 7x2+1.
15
Exemple : Algorithme type réel
Algorithme type-réel Variables : nombre1, nombre2, résultat : réel var1:entier Début nombre1 1.5 nombre2 15 var1 2 résultat nombre1 / nombre2 x var1 Fin
16
Conversion : • Convertir un entier en réel est possible : cette opération n’entraine pas de perte d’information. Par exemple, l’entier 15 deviendra 15,0.
• Convertir un réel en entier entraîne une perte d’information : Les chiffres décimaux sont perdus. Par exemple, le réel 15,75 deviendra 15. Algorithme conversion-numérique
Variables : nombre1 : entier nombre2 : réel Début nombre Nombre2 nombre1 Fin
15 nombre1 nombre2 + 0.5
// nombre2 vaut 15.0 // erreur : impossible
17
Le type caractère • Il s’agit du domaine constitué des caractères alphabétiques, numériques et de ponctuation. • On devra pas confondre le signe ‘3’ (noté entre deux « simples quotes » en tant que caractère et l’entier 3. • En pseudo-code une chaîne de caractères est toujours notée entre guillemets. • A chaque caractère est associé une unique valeur numérique ( le code ASCII, établie cette correspondance : par exemple, la lettre A correspond a la valeur 65 ). • http://www.table-ascii.com/
18
19
20
Expressions et opérateurs • Les seules opérations élémentaires pour les éléments de type caractère sont les opérations de comparaison.
<
>
#
=
≤
≥
Conversion • La conversion de type caractère vers entier : pour convertir le caractère ‘3’ en une valeur entière 3, il suffit de calculer la différence entre les deux caractères : ‘3’ –’0’, qui vaut 3.
21
Exemple :
Algorithme conversion-caractère-entier Variables : car : caractère nombre : entier Début car ‘3’ nombre ‘3’ - ‘0’ nombre nombre + 2 car ‘0’ + nombre Fin
// nombre vaut 3 // nombre vaut 5 // car vaut ‘5’
22
Le type logique booléen • Le domaine des booléens est l’ensemble formé des deux seules valeurs (vrai, faux).
• Les opérations admissibles sur les éléments de ce domaine sont réalisées à l’aide de tous les connecteurs logiques, notés : ET : pour le « et logique »; OU : il est vrai si l’un des deux booléens testés vaut vrai; NON : pour le « non logique »
23
Exemple1 : Algorithme type-booleen
Algorithme Variables : Début booléen1 booléen2 booléen Fin
type-booléen booleen1, booléen2 : booléen 5< 6
// booléen1 prend la valeur Vrai
(58) // booléen2 prend la valeur Vrai vrai // booléen prend la valeur Vrai
24
Exemple 2: Ecrire un algorithme qui demande à l’utilisateur d’entrer une température de l’eau pour il indique son état physico-chimique. Variable Temp en Entier Variables A, B : Booléen Début Ecrire “Entrez la température de l’eau :” Lire Temp A ← Temp =< 0 B ← Temp < 100 Si A Alors Ecrire “C’est de la glace“ Sinon Si B Alors Ecrire “C’est du liquide” Sinon Ecrire “C’est de la vapeur” Fin
25
Valeur d’une variable • La valeur de la variable est la seul caractéristique qui soit modifiée au cours de l’algorithme. Au début de l’algorithme, toutes les variables ont des valeurs inconnues. • Les variables changent de valeur grâce à l’opération d’affectation.
Affectation : • L’affectation est une opération qui fixe une nouvelle valeur à une variable. Le symbole de l’affectation est
26
Exemple 1 :
A B
2 A+1
Exemple 2 : Début Caractère Type Fin
Début ‘’chaîne’’ ‘’caractère’’
caractère Type Fin
‘’chaîne’’ caractère
27
L’ordre des instructions • L’ordre dans lequel les instructions sont écrites joue un rôle essentiel dans le résultat final. Exemple 3 : Quelles seront les valeurs des variables A et B après exécution des instructions suivantes ? Variables A, B en Entier Début A←1 B←A+3 A←3 Fin
28
Plan Introduction Informatisation d’un problème : Langage algorithmique Les variables
Les constantes Les structures de contrôle Les fonctions Les tableaux Les fichiers
29
IV. Les constantes • Valeurs utilisées mais non modifiées par l’algorithme. Une constante ne change jamais dans le temps. • Les constantes sont placés avant le lexique des variables. • Les constantes sont définies par : Nom référence de la constante (en majuscule).
Type nature de la valeur Valeur la valeur de la constante, Description un texte indiquant ce que représente la constante, Exemple : CONST MAX=10
30
Plan Introduction
Informatisation d’un problème : Langage algorithmique Les variables Les constantes Fonctions d’entrée-sortie Les structures de contrôle Les tableaux Les fonctions Les fichiers
31
V. Fonctions d’entrée-sortie
• Les programmes utilisent fréquemment des instructions permettant l’affichage à l’écran et la saisie de valeurs au clavier par l’utilisateur. • Nous avons deux opérations analogues permettant de simuler : • L’affichage d’une phrase avec l’instruction écrire • La saisie d’une valeur par l’utilisateur avec l’instruction lire
32
La fonction lire L’instruction de saisie de données par l’utilisateur est : • Lire nomDeVariable
• L’exécusion de cette instruction consiste à : 1. Demander à l’utilisateur de saisir une valeur sur le périphérique d’entrée; 2. Modifier la valeur de la variable passé entre parenthèses; Avant l’exécution de cette instruction, la variable de la liste avait ou n’avait pas de valeur. Après, elle a la valeur lue au clavier ( le périphérique d’entrée).
33
La fonction écrire L’instruction d’affichage à l’écran (le périphérique de sortie) d’une expression est : • Ecrire expression
Cette instruction réalise simplement l’affichage de l’expression Cette expression peut être :
• Une variable • Des commentaires écrits sous la forme d’une suite de caractère entre guillemets. • A la fois des phrases et des valeurs séparés par une virgule.
34
Algorithme exemple-lire-écrire Variables : nb: réel Début lire nb
// l’utilisateur saisie le nombre au clavier
écrire ‘’la valeur de nb’’ écrire nb
// une phrase est affichée à l’écran // une valeur est affichée à l’écran
écrire (« la valeur de nb est : » , nb) // une phrase suivie de la valeur est affichée à l’écran
Fin
35
Exemple :
• Ecrire un algorithme qui demande à l’utilisateur de saisir au clavier trois nombres réels et qui affiche à l’écran la somme de ces trois nombres.
36
Algorithme somme-de-3 réels Variables : nb1, nb2,nb3, somme: réel
Début lire nb1
// l’utilisateur saisit le premier nombre au clavier
lire nb2 lire nb3 Somme écrire somme Fin
nb1 + nb2+ nb3 // la somme est affichée à l’écran
1
Algorithmique TOUHTOUH Samira Ecole Nationale des Sciences Appliquées d’El Jadida
[email protected]
2
Plan Introduction Informatisation d’un problème : Langage algorithmique Les variables Les constantes Fonctions d’entrée-sortie Les structures de contrôle Les tableaux Les fonctions
Les fichiers
3
VI. Les structures de contrôle
Instruction conditionnelle • Un algorithme est constitué d’une suite d’instructions qui s’exécutent les unes après les autres de la première à la dernière.
• L’instruction conditionnelle va nous permettre de concevoir un algorithme qui n’exécutera pas certains blocs d’instructions. La conditionnelle
• L’instruction conditionnelle détermine si le bloc d’instructions suivant est exécuté ou non. La condition est une expression booléenne dont la valeur détermine le bloc d’instructions.
4
Exemple avec un organigramme :
• Lors de la manipulation d’un distributeur de café, on utilise souvent les sélecteurs « sucré/non sucré » et « chaud /froid). Ensuite on voit apparaitre de la poudre de café, du sucre, puis de l’eau chaude ou froide en fonction de nos demandes.
• Voici un organigramme qui représente l’algorithme enregistré dans l’appareil :
5 Distribuer un gobelet
// L’action « fournir un gobelet » doit être effectuée à chaque exécution de l’algorithme. La poudre de café doit aussi être toujours fournie
Verser le café
Sucré ? // L’action « verser du sucre » n’est Verser le sucre
effectuée que si l’utilisateur a choisi un café sucré
chaud ? Verser l’eau froide
Verser l’eau chaude
// Une seule des deux actions « verser de l’eau chaude » et « verser de l’eau froide » est effectuée.
6
• La syntaxe de cette instruction est : Si (condition)
alors
{ Bloc d’instructions n°1 ;
// exécuté si la condition égale vrai
}
sinon { Bloc d’instructions n°2; }
// exécuté si la condition égale Faux
7
• L’algorithme de la machine à café se présentera ainsi :
Distribuer un gobelet Verser le café en poudre Si le café doit être sucré Alors verser du sucre Si le café doit être chaud Alors verser de l’eau chaude
Sinon verser de l’eau froide
8
Exemple1 : Ecrire un algorithme qui lit deux entiers et affiche le plus grand des deux.
Exécuter avec x = 5 et y = 7
9
Exemple 2 : (avec une variable caractère) Ecrire un algorithme qui prend en compte la réponse d’un utilisateur qui doit répondre à une question par oui ou par non, La question est « Peut-on passer au feu rouge clignotant? » Variable réponse : caractère Début Ecrire « Peut-on passer au feu rouge clignotant? » Ecrire « Répondez par O ou N » Lire réponse Si réponse ‘’O’’ alors { écrire ‘’ ajourné’’ } Si réponse ‘’N’’ alors { écrire ‘’admis’’ } Fin
10
Applications La condition simple
• Une version plus simple est utilisée si l’alternative n’a pas lieu. La syntaxe de cette instruction est alors : Si
(condition)
{ Instructions; }
alors
11
Exemple : Ecrire un algorithme qui lit un entier et qui affiche sa valeur positive.
12
La présentation Les décalages dans l’écriture d’un algorithme sont nécessaires à sa bonne lisibilité.
13
Exemple1 : La différence entre les deux algorithmes identiques suivants : Algorithme Max-de-deux-entiers Variables : x, y, max : entier Début Lire x Lire y Si x>y alors { Max }
Algorithme Max-de-deux-entiers Variables : x, y, max : entier Début Lire x Lire y Si x>y alors {
x
Max
x
}
Sinon
Sinon
{ Max }
{
y
Ecrire (‘’ le maximum est : ‘’, max) Fin
Max
y
} Ecrire (‘’ le maximum est : ‘’, max) Fin
14
Exemple2 : Comparons les deux algorithmes : Variables X, Y, Z : nombres Début Y 2 Lire X Si X > 10 Alors X Y Z X*Y Ecrire Z
Fin
X – 10 1
Variables X, Y, Z : nombres Début Y 2 Lire X Si X > 10 Alors X Y 1 Z X*Y Ecrire Z Fin
X – 10
15
Conditionnelles imbriquées • Il est possible d’imbriquer des blocs de programme les uns dans les autres. Exemple : Ecrire un algorithme qui demande à l’utilisateur une note et affiche le commentaire associé à la note : Note de 0 à 8 inclus : « insuffisant »; Note de 8 à 12 inclus : « moyen » Note de 12 à 16 inclus : » bien »; Note de 16 à 20 inclus : « très bien ».
16 La première solution utilise l’instruction conditionnelle classique : Algorithme commentaires-notes
Variables : note : entier Début Lire note Si note ≤ 8 alors Ecrire (‘’insuffisant ‘’) Si note>8 ET note ≤12 alors Ecrire (‘’moyen’’) Si note > 12 ET note ≤16 alors Ecrire (‘’bien’’) Si note > 16 alors Ecrire (‘’très bien’’) Fin
17
Instruction de répétition
La boucle • L’instruction de répétition, appelée boucle, permet d’exécuter plusieurs fois consécutives un même bloc d’instructions. La répétition s’effectue tant que la valeur de l’expression booléenne est égale à Vrai.
• On dispose de trois structures de contrôle différentes :
18
tant que…………faire : • Cette structure de contrôle fait répéter une séquence d’instructions, aussi longtemps qu’une condition a la valeur Vrai. • Son fonctionnement précis est décrit par l’organigramme :
non
Condition
oui
suite
Séquence D’instructions
19
Exemple 1 : Ecrire un algorithme qui permet d’afficher à l’écran les entiers de 1 à 5.
Algorithme affichage-des-entiers-1-à-5 Variables:
compteur : entier
Début Compteur 1 tant-que compteur ≤ 5 faire { écrire compteur compteur compteur + 1 } Fin
// initialisation // condition de poursuite // début du bloc // traitement // incrémentation du compteur // fin du bloc
20
Remarques :
• Les variables intervenant dans la condition doivent avoir reçu une valeur avant l’évaluation de cette condition : initialiser la condition de la boucle.
• Cette valeur peut être complètement arbitraire, et n’avoir qu’un seul intérêt : forcer l’entrée dans le boucle.
21
Exemple :
Ecrire un algorithme qui prend en compte la réponse d’un utilisateur qui doit répondre à une question par oui ou par non, La question est « Peut-on passer au feu rouge clignotant? » Rep
‘’Z’’
Tant Que Rep # ‘’O ‘’ et Rep # ‘’N’’ Faire Ecrire ‘’Répondez O pour oui, N pour Non’’ Lire Rep
22
• Si la première évaluation de la condition fournit la valeur Faux, le corps de la boucle n’est pas exécuté, la condition ne sera plus évalué et on passe directement à la suite.
• Si la séquence ne change pas la valeur de la condition et si celle-ci a la valeur Vrai, la séquence sera répétée sans que l’on passe jamais à la suite : une boucle infinie.
23
Structure
pour
Lorsque la répétition ne porte que sur le nombre d’itérations et qu’il est connu avant de commencer la boucle, il est pratique d’utiliser la boucle :
pour
de
à
faire
24
Exemple1 : Ecrire un algorithme qui permet d’afficher les entiers de 1 à 5.
Algorithme boucle-pour-faire Variables : compteur : entier Début Pour compteur { écrire compteur } Fin
1
jusqu’au 5 faire
25
Exemple 2 : Ecrire un algorithme qui permet d’afficher la table de multiplication par 7, présentée à l’ancienne : 7 fois 1 font 7 7 fois 2 font 14 …… 7 fois 10 font 70
26
La boucle faire-tant que • La boucle faire-tant que effectue l’évaluation de la condition booléenne après avoir effectué le premier tour de boucle. Dans certains cas, des algorithmes s’écrivent avec moins de lignes en utilisant ce type de boucle. Compteur
1
Faire
// initialisation
// condition de poursuite
{ écrire compteur compteur compteur + 1
//traitement // incrémentation du compteur
} tant-que (compteur ≤ 4)
// condition
27
Exemple 2 :
Soit l’algorithme Variable x : nombre entier Début Ecrire ‘’donnez l’entier de départ’’ Lire x Tant que x