Vous êtes sur la page 1sur 8

COURS ALGORITHME

ALGO Page 1/8



1. DEFINITIONS

Algorithme : Description en langage naturel de la suite des actions effectues par un programme
structur. Un algorithme est crit en utilisant un langage de description dalgorithme (LDA).
Lalgorithme ne doit pas tre confondu avec le programme proprement dit (tel que Pascal, C, ..)

Algorigramme : Traduction graphique de lalgorithme. Aussi appel Organigramme.

Quelques symboles utiliss pour construire un algorigramme
































Syntaxe : Rgles dcriture dun langage donn.

Type de donnes :
Un programme peut-tre amen manipuler diffrents types de donnes :
- boolen : valeur pouvant tre soit Vraie, soit Fausse.
- entiers : valeur numriques entires pouvant tre signes ou non signes (codes
sur un ou plusieurs octets).
- rels : valeurs numriques codes avec une mantisse et un exposant.
- caractre : octet correspondant un code ASCII.
- chane de caractres : ensemble de caractres.
- tableau de donnes : ensemble de donnes de mme type (exemple : tableau
dentiers, tableau de rels).

Toutes ces donnes sont codes sous forme d'octets en mmoire.

Constante : donne manipule par un programme et ne pouvant tre modifie.
Exemple : Constante Pi = 3.141559



SYMBOLE DESIGNATION SYMBOLE DESIGNATION
Symboles de traitement Symboles auxiliaires

Symbole gnral
Opration sur des
donnes, instructions,
Renvoi
Connecteur utilis la fin
et en dbut de ligne pour
en assurer la continuit

Sous-programme
Portion de programme
Dbut, fin ou
interruption
dun algorithme

Entre-Sortie
Mise disposition ou
enregistrement dune
information

Symbole de test

Branchement
Dcision dun choix parmi
dautres en fonction des
conditions

Liaison
Les diffrents symboles
sont relis entre eux par
des lignes de liaison.
Le cheminement va de
haut en bas et de gauche
droite.
Un cheminement diffrent
est indiqu laide dune
flche.
COURS ALGORITHME

ALGO Page 2/8

Variable : donne manipule par un programme et pouvant tre modifie.
Ce peut tre :
- une donne dentre ;
- le rsultat final dun calcul ;
- un rsultat intermdiaire de calcul.

Identificateur : nom explicite dune constante, dune variable ou dune fonction.
Exemples : Conversion_BCD, Rsultat, Lettre

Procdures et fonctions : Une procdure ou une fonction effectuent une suite dactions
lmentaires constituant un tout.
Une fonction se diffrencie dune procdure par le fait quelle fournit un rsultat.


2. ORGANISATION DUN PROGRAMME

Lalgorithme dun programme est organis en plusieurs parties :
dclaration des constantes
dclaration des variables
dfinition des fonctions et procdures
dfinition du programme principal



algorithme nom de lalgorithme ;


const
liste des constantes ;
var
listes des variables ;
struc
liste des structures ;


fonc
liste des fonctions ;

proc
liste des procdures ;


dbut
action 1 ;
action 2 ;
.
.
.
action n ;
fin algorithme

2.1 Dclaration des constantes
Syntaxe : Constante NomConstante : [Type] = Valeur

Exemples : Constante Pi : Reel = 3.141559
Constante NombreLettres : Entier = 10

2.2 Dclaration des variables
Syntaxe : Variable NomVariable : [Type]

Exemples : Variable Rayon : Reel
Variable Compteur : Entier
Variable Lettre : Caractere
Len-tte
Dclaration des constantes, variables
Dfinition des fonctions et procdures
Dfinition du corps de lalgorithme
COURS ALGORITHME

ALGO Page 3/8

2.3 Dfinition des fonctions et procdures
Les procdures et fonctions peuvent ncessiter ventuellement un ou plusieurs paramtres
dentre ou de sortie.
Un paramtre dentre est la rfrence une variable manipule par la procdure ou la fonction.
Un paramtre de sortie est une valeur renvoye par une fonction.
Une fonction ou une procdure peut elle-mme appeler une ou plusieurs fonctions et procdures.

Syntaxe de la dclaration dune fonction :
Fonction NomFonction (NomEntre1 : [Type], NomEntre2 : [Type],) : [TypeDuRsultat]
Constante ~ dclaration des constantes locales ~
Variable ~ dclaration des variables locales ~
Dbut
~ description des actions effectues par la fonction ~
Fin

Syntaxe de lappel dune fonction :
Variable NomFonction (NomEntre1, NomEntre2)

Exemple de dclaration de fonction :
Fonction Moyenne (Note1 : Reel, Note2 : Reel) : Reel
Variable Intermediaire : Reel
Dbut
Intermediaire Note1 + Note2
Intermediaire Intermediaire / 2
Moyenne Intermediaire
Fin

Exemples dutilisation de la fonction :
Afficher (Moyenne(10.5,15)) ou NouvelleNote Moyenne (10,5.5)

Nota : la dclaration et lappel dune procdure ne sont pas dvelopps ici.


2.4 Dfinition du programme principal
Le programme principal consiste en une suite doprations lmentaires faisant souvent appel
des fonctions ou procdures. Ces diffrentes oprations sont mentionnes en utilisant les
structures algorithmiques dcrites au paragraphe 5.

Le programme principal est dlimit par les mots-clefs Dbut et Fin


3. AFFECTATION

Une affectation consiste attribuer une valeur une variable.
La syntaxe gnrale est la suivante : NomVariable Expression
Expression peut tre :
une constante. ......................................................................................Ex : surface 40
une autre variable. .........................................................Ex : Donnee ValeurMemorisee
le rsultat dune fonction. .............................................. Ex : resultat racine (nombre)
un calcul portant sur ces diffrents lments. .... Ex : surface (PI * Carre (Diametre)) / 4

Nota : Un abus dcriture nous amne parfois voir le signe = la place de la flche.
Cest valable normalement pour lcriture en langage de programmation (Basic compil,
Pascal, ) mais pas dans un algorithme.


COURS ALGORITHME

ALGO Page 4/8

4. OPERATEURS CONDITIONS

4.1 Oprateurs
Les oprateurs permettent dlaborer une expression en vue deffectuer un calcul ou une
comparaison.
Lusage des parenthses est vivement conseill dans le cas dexpressions complexes.

Nature Variables utilises Notation Signification
+ Addition
Oprateurs arithmtiques Entier - Soustraction
Rel * Multiplication
/ Division (relle)
DIV Division entire
MOD Reste de la division entire
et Fonction ET
Oprateurs logiques Boolen ou Fonction OU
Entier ouex Fonction OU EXCLUSIF
non Fonction NON
Oprateur de concatnation Chane de caractres + Concatnation
Boolen = Egal
Entier Diffrent
Oprateurs de comparaison Rel < Infrieur
Caractre > Suprieur
Chane de caractres ! Infrieur ou gal
" Suprieur ou gal

4.2 Conditions
Dans les structures algorithmiques qui vont suivre, le terme Condition peut reprsenter :
une condition simple : Ex : x 1 0 Indice 3 80
une condition complexe : Ex : (x > 0) ET ((y > 0) OU (z > 0))
(Indice " 1) ET (Indice ! 10) ~ pour 1 ! Indice !10 ~

5. LES STRUCTURES ALGORITHMIQUES

Les structures algorithmiques sont rparties en 3 catgories :
- structures linaire d'oprations;
- structures alternatives (ou conditionnelles) ou de choix : en fonction d'une condition, le
programme excute des oprations diffrentes;
- structures itratives ou rptitives: sous contrle d'une condition, une squence d'oprations est
excute rptitivement.

5.1 Structure linaire
Les actions successives sont mentionnes les unes aprs les autres.

Syntaxe Algorigramme

Action1
Action2
...
ActionN



Remarque : dans la suite, la notation Actions ou ActionsN reprsentera une
succession dactions comme ci-dessus.

Exemple : Calcul dun produit de 2 nombres
Variable
a,b : rel ~ oprandes ~
p : rel ~ rsultat du produit ~


Action 1

Action 2

Action N
COURS ALGORITHME

ALGO Page 5/8

Dbut
Afficher (Saisir le nombre a )
Saisir (a)
Afficher (Saisir le nombre b )
Saisir (b)
p a * b
afficher (p)
Fin

5.2 Structures alternatives
5.2.1 Structure SI ... ALORS ...
Une condition est teste pour dterminer si laction ou le groupe dactions suivant doit
tre excut.

Syntaxe Algorigramme

Si Condition Alors
Actions
FinSi

Remarque : au lieu de FinSi on crit aussi fsi

Exemple : Calcul dune racine carre
Variable
x: rel ~ oprande ~
r: rel ~ rsultat de la racine carre ~
Dbut
Afficher (Saisir le nombre x)
Saisir (x)
Si x > 0 Alors
r racine (x)
afficher (r)
FinSi
Fin

5.2.2 Structure SI ... ALORS ...SINON ...
Une condition est teste pour dterminer quelle action ou quel groupe dactions doit tre excut.

Syntaxe Algorigramme

Si Condition Alors
Actions1
Sinon
Actions2
FinSi

Exemple : Calcul dune racine carre
Variables :
x: rel ~ oprande ~
r: rel ~ rsultat de la racine carre ~
Dbut
Afficher (Saisir le nombre x)
Saisir (x)
Si x < 0 Alors
afficher (x est ngatif)
Sinon
r racine (x)
afficher (r)
FinSi
Fin
Condition

Actions
Condition

Actions1

Actions2
COURS ALGORITHME

ALGO Page 6/8

5.2.3 Structure de choix multiple

Une donne est compare successivement des valeurs constantes :

Syntaxe Algorigramme

Suivant Donne faire
Valeur1 : Actions1
Valeur2 : Actions2
...
ValeurN : ActionsN
Sinon
ActionsN+1
FinSuivant

Remarques : la partie ActionsN+1 peut ne pas exister.
Plusieurs valeurs diffrentes peuvent tre regroupes sur une mme ligne si les
actions correspondantes sont identiques.

Exemple : Affichage de la nature dun caractre
Variable
c: caractre ~ caractre saisi au clavier ~
Dbut
Afficher (Taper un caractre)
Saisir (c)
Suivant c Faire
A..Z : afficher (Lettre majuscule)
a..z : afficher (Lettre minuscule)
0..9 : afficher (Chiffre)
Sinon
afficher (Ni Lettre Ni Chiffre)
FinSuivant
Fin

5.3 Structures itratives (ou rptitives)

5.3.1 Structure REPETER ... JUSQUA ...
Une action ou un groupe dactions est excut rptitivement jusqu' ce quune condition
soit vrifie.

Syntaxe Algorigramme

Rpter
Actions
Jusqua Condition




Remarque : la vrification de la condition seffectue aprs les actions. Celles-ci sont
donc excutes au moins une fois.

Exemple : excution rptitive dun programme
Variables :
a,b : rel ~ oprandes ~
p : rel ~ rsultat du produit ~
c : caractre ~ rponse de lutilisateur ~

Donne =
Valeur1

Actions1

Actions2

Donne =
Valeur2

Donne =
ValeurN

ActionsN

ActionsN+1
Condition

Actions
COURS ALGORITHME

ALGO Page 7/8

Dbut
Rpter
Afficher (Saisir le nombre a )
Saisir (a)
Afficher (Saisir le nombre b )
Saisir (b)
p a * b
afficher (p)
afficher (encore un calcul ? Non touche N ; Oui autre touche)
saisir (c)
Jusqu' c = N
Fin

5.3.2 Structure TANT QUE ... FAIRE ...
Une action ou un groupe dactions est excut rptitivement tout le temps o une
condition est vraie.

Syntaxe Algorigramme

TantQue Condition
Faire
Actions
FinFaire


Remarque : la vrification de la condition seffectue avant les actions. Celles-ci
peuvent donc ne jamais tre excutes.

Exemple : Excution rptitive dune action
Dbut
Tant Que Non (ToucheAppuye)
Faire
Afficher (Attente)
FinFaire
Fin

5.3.3 Structure POUR Indice DE ... A .... FAIRE ...
Une action ou un groupe dactions est excut rptitivement un certain nombre de fois : le
nombre dpend des valeurs initiale et finale donnes la variable Indice .

Syntaxe Algorigramme

Pour Indice De Val1 A Val2
Faire
Actions
FinFaire





Remarque : les valeurs initiale (Val1) et finale (Val2) sont incluses dans le comptage.
Il est ventuellement possible de spcifier un autre pas dincrmentation (+2,+10,-
1....)

Condition

Actions
Indice>Val2

Actions

Indice Val1

Indice Indice+1
COURS ALGORITHME

ALGO Page 8/8

Exemple : Affichage dune ligne dtoiles
Variable
i : entier ~ compteur de boucles ~
Dbut
Pour i de 1 80
Faire
Afficher (*)
FinFaire
Fin

Remarque : cette structure algorithmique peut en fait tre remplace par une structure
TANT QUE ... FAIRE

Variable
i : entier ~ compteur de boucles ~
Dbut
i 1
Tant Que i " 80
Faire
Afficher (*)
i i +1
FinFaire
Fin



Par la suite, nous nous intresserons plus particulirement aux structures
algorithmiques du programme principal.

Vous aimerez peut-être aussi