Академический Документы
Профессиональный Документы
Культура Документы
Programmation
Algorithmique et
SOMMAIRE
I. INTRODUCTION.................................................................................................................2
II. LES STRUCTURES DE BASE DUN LANGAGE DE PROGRAMMATION.............3
A. LA SQUENCE DINSTRUCTIONS...................................................................................3
1. Les Oprations sur les variables...............................................................................3
2. Le dialogue avec lutilisateur....................................................................................5
B. LA STRUCTURE ALTERNATIVE.......................................................................................7
C. LA STRUCTURE RPTITIVE..........................................................................................8
1. La boucle TantQue....................................................................................................9
2. La Boucle Rpter Jusqu....................................................................................10
3. La Boucle Pour........................................................................................................11
D. LA DCLARATION DES VARIABLES..............................................................................13
1. Les types de Variables.............................................................................................14
E. LES FONCTIONS ET PROCDURES................................................................................16
1. Procedure................................................................................................................16
2. Fonction..................................................................................................................17
III. LES RGLES DE PROGRAMMATION......................................................................19
IV. LA COMPILATION.........................................................................................................20
V. RSUM...........................................................................................................................21
Page 1
Support de Cours
Programmation
Algorithmique et
I. Introduction
Quand une personne dbute dans le domaine de linformatique, il commence
gnralement travailler avec des logiciels qui existent ou qui sont cres
pralablement par quelquun dautre, On lappelle cependant Utilisateur. Mais un jour
ces logiciels ne satisferont plus tous les besoins de cet utilisateur. Ce nest qu ce
moment l quil va penser crer ses propres applications ou programmes et passer du
stade dutilisateur au stade du Programmeur.
Page 2
Support de Cours
Programmation
Algorithmique et
A. La squence dinstructions
Une instruction est une action que lordinateur est capable dexcuter. Chaque
langage de programmation fournit une liste dinstructions qui sont implmentes et
que lon peut donc utiliser sans les rcrire.
Dans notre pseudo-langage, nous naurons que la liste minimal dinstructions,
ncessaire et suffisante pour les programmes que nous aurons crire.
1. Les Oprations sur les variables
Tout au long dun programme, une variable peut subir plusieurs changements
issu de certaines oprations (Affectation, Incrmentation, Decrmentation,
Arithmtique ) et del un changement de sa valeur.
Affectation
Initialisation
Oprations
Oprations Arithmtiques
Incrmentation / Decrmentation
Dans un organigramme, elles sont reprsentes ainsi :
Formalisme dune Squence dinstructions
dOprations
Variable
Variable
Variable
Variable
Valeur
Val1 + Val2 * .
Variable + Val
Variable - Val
Page 3
Support de Cours
Programmation
Algorithmique et
Valeur
Val1 + Val2 * .
Variable + Val
Variable - Val
Par exemple :
A
S
B
A
5
3 + (2 * 3) / 6
A + ( 20 * S)
A - 1
a) Laffectation
Une affectation cest le fait de mmoriser une valeur un endroit dans la mmoire
nomm variable ou dont ladresse est le nom de la variable.
Variable
Valeur
Par exemple :
I
Termine
Vrai
b) LIncrmentation et la Decrmentation
Incrmenter une variable cest le fait de lui ajouter une valeur sa valeur initiale.
Decrmenter une variable cest le fait de soustraire une valeur de sa valeur initiale.
Cette notion est souvent utilise dans le cas ou on a besoin de crer un compteur.
Variable
Variable + Val
Par exemple :
I
J
I+1
j2
Page 4
Support de Cours
Programmation
Algorithmique et
c) LInitialisation
Cest le fait de donner une valeur initiale une variable avant de lincrmenter ou de la
decrmenter. Cette notion est souvent employe lorsquon utilise un compteur.
Var
ValI
Par exemple :
I
I
0
I+1
d) Les oprations arithmtiques
Par exemple :
A
5+2 ; B
A 1 ; C
(B / 2) 1 + A
Lire Variable
Afficher Message
Afficher Variable
Imprimer Variable
Imprimer Message
Page 5
Support de Cours
Programmation
Algorithmique et
En pseudo-langage :
Afficher Quel est ton nom ? :
Lire Nom
Afficher Ton nom est : , Nom
Afficher Le mien est Khalil
Page 6
Support de Cours
Programmation
Algorithmique et
B. La structure alternative
Il est souvent ncessaire lorsque lon crit un programme de distinguer entre
plusieurs cas conditionnant lexcution de telles ou telles instructions. Pour ce faire, on
utilise une structure alternative (Conditionnelle) : Si on est dans tel cas on fait cela
sinon on fait ceci. Le formalisme de cette structure dans un organigramme sera
comme suit :
Formalisme dune Structure alternative
Non
Condition
Oui
Actions 2
Actions 1
Page 7
Support de Cours
Programmation
Algorithmique et
Par exemple :
(A<1)
(A<=B) ..
Par exemple :
(A<>B) ET (A>=5)
((A<0) ET ((B=0) OU (C<>A)) XOR (D=1))
Lorsque lon crit de telles conditions, il est recommand de mettre toutes les
parenthses afin dviter les erreurs.
Non
ABS
A<0
Oui
ABS
A*(-1)
A FINSI
C. La Structure rptitive
Un programme a presque toujours pour rle de rpter la mme action un
certain nombre de fois. Pour ce faire, on utilise une structure permettant de dire
Excuter telles actions jusqu ce que telle condition soit remplie .
Bien quune seule soit ncessaire, la plupart des langages de programmation proposent
trois types de structures rptitives. Voici celles de notre pseudo-langage.
Page 8
Support de Cours
Programmation
Algorithmique et
1. La boucle TantQue
Le formalisme de cette structure dans un organigramme sera comme suit :
Condition
Non
Oui
Actions
Par exemple : Ceci est un programme qui va permettre de calculer la somme des
nombres entiers Infrieurs N :
Organigramme :
Lire N
S
I
0
0
I<N
Non
Oui
Afficher S
I
S
I+1
S+I
Page 9
Support de Cours
Programmation
Algorithmique et
Algorithme (Pseudo-langage) :
Lire n
I
0
S
0
TantQue ( I< n ) Faire
I
I+1
S
S+ I
FinTQ
Afficher S
2. La Boucle Rpter Jusqu
Cette boucle va pouvoir excuter les actions au moins une fois la vrification de
la condition se fait la fin de la boucle contrairement la boucle tant que.
Actions
Condition
Non
Oui
Page 10
Support de Cours
Programmation
Algorithmique et
S
I
S
I
0
0
S+I
I+1
I >= N
Non
Oui
Afficher S
Algorithme ou pseudo-langage :
Lire n
I
0
S
0
Rpter
S
S+I
I
I+1
Jusqu ( I >= n )
Afficher S
3. La Boucle Pour
Trs souvent, on utilise une structure rptitive avec un compteur et on sarrte
lorsque le compteur a atteint sa valeur finale.
Page 11
Support de Cours
Programmation
Algorithmique et
Par exemple :
Lire n
I
0
S
0
Rpter
S
S+I
I
I+1
Jusqu ( I >= n )
Afficher S
Cest pourquoi la plupart des langages de programmation offrent une structure
permettant dcrire cette rptitive plus simplement. Dans le pseudo-langage cest la
structure POUR. Lorganigramme de cette structure peut tre reprsenter comme suit :
Actions
Suivant Variable
Suivant Variable
Lorsque le pas est Omis, il est suppos gale (+1).
Page 12
Support de Cours
Programmation
Algorithmique et
Par exemple : Ceci est un programme qui va permettre de calculer la somme des
nombres entiers Infrieurs N :
Organigramme :
Lire N
S
S+I
Suivant I
Afficher s
Algorithme ou pseudo-langage :
Lire n
S
0
Pour I Allant de 0 A N Faire
S
S+I
Suivant I
Afficher S
PROGRAMME
DECLARATION DES DONNEES
STRUCTURES ET INSTRUCTIONS
La partie instruction contient les instructions excuter.
La partie donnes contient toutes les variables utilises par le programme.
Page 13
Support de Cours
Programmation
Algorithmique et
Page 14
Support de Cours
Programmation
Algorithmique et
CARACTERE
Par exemple :
mot : TABLEAU [10] CAR
Liste_nbr : TABLEAU [25]
Page 15
Support de Cours
Programmation
Algorithmique et
Par exemple :
Procedure Remplir_Chaine ( Val Longueur : Entier , Val Caractere : CAR , Var
Chaine : TABLEAU [MAXCAR] CAR )
I, long : Entier
Page 16
Support de Cours
Programmation
Algorithmique et
Dbut Procdure
Si Longueur > MAXCAR Alors
Long =MAXCAR
Sinon
Long = Longueur
FinSI
Pour I allant de 1 long Faire
Chane(i) =Caractre
FinPour
Fin Procdure
On lutilise ainsi :
Remplir_Chaine (12, *, Ligne)
Ou
Remplir_Chaine(longmot, rep, message)
2. Fonction
Une fonction est une procdure dont le but est de dterminer une valeur et de la
retourner au programme appelant.
Dans notre pseudo-langage, elle se dclare de la manire suivante :
Fonction Nom_Fonction (Val Variable : Type , , Var Variable : Type ) : Type
Dclaration des variables locales
Dbut Fonction
Actions
Nom_Fonction = Valeur
Fin Fonction
Les mme remarques pour la procdure sapplique pour une fonction. De plus il faut
noter que la fonction retourne une valeur (ou le contenu dune variable), donc on doit
indiquer son type.
Lappel dune fonction scrit :
Variable = Nom_Fonction (Variable, , Valeur )
Une fonction ne peut donc pas retourner un tableau.
Par exemple :
Rhatay Khalil Bentaleb Mohamed
Page 17
Support de Cours
Programmation
Algorithmique et
Page 18
Support de Cours
Programmation
Algorithmique et
Mieux Ecrit
Si (A<0) Alors
ABS
A* (-1)
Sinon
ABS A
FINSI
Si (A<0) Alors
ABS
A* (-1)
Sinon
ABS A
FINSI
Page 19
Support de Cours
Programmation
Algorithmique et
IV. La compilation
Un langage de programmation sert crire des programmes de manire les
excuter. Des outils, appels Compilateurs, permettant de traduire le langage crit par
le programmeur en langage machine. Il fonctionne de la manire suivante :
Bibliothque
Programme Externe
Fichier
Source
Langage de
Programmation
Instruction1.. Instruction2..
Erreurs de Syntaxe
(Erreurs de compilation)
Editeur
de Lien
Fichier
Objet
Fichier
Excutable
(Langage
Machine)
Erreurs de
Compilation
Erreurs
dExcution
Page 20
Support de Cours
Programmation
Algorithmique et
V. Rsum
Structure Gnrale dun Algorithme
Programme Nom_Programme
Dclarations des Variables Globales :
Nom_Var : Type
Nom_Tab : Tableau [ i ,J ] Type
(Type = Entier, Rel, Car, Chane ou Boolen )
Dclarations
Dbut Programme
Actions
Suite dInstructions :
Oprations (Arithmtique , Incmentation,..)
Instructions dEntre / Sortie (Lire , Afficher ..)
Appel de procdure ou de Fonction
- Nom_Procedure
- Var
Nom_Fonction (Vars ou Vals,)
Structure :
Structure Alternative
Si Condition Alors Action1 Sinon Action2 FinSi
Structure rptitive
Rpter Actions Jusqu' Condition
TantQue Condition Faire Actions FinTQ
Pour Var Allant de Vali Valf [Pas de Val]
Faire Actions Suivant Var
Structure Complexe ( Combine les deux )
Fin Programme
Page 21
Support de Cours
Programmation
Algorithmique et
Condition :
Condition Operateur_Logique Condition
Variable Oprateur_Conditionnel Valeur
Variable Oprateur_Conditionnel Variable
Dbut
Instruction d E / S
Structure Complexe
Ou Imbrique
Oprations
Structure Rptitive
Oui
Condition
Condition
Non
Non
Actions
Oui
Structure
Rptitive
lintrieur
dune structure
Alternative
Actions
Instruction D E / S
Fin
Page 22