I. Définitions
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Algorithme
|
ü Description en langage
naturel de la suite des actions effectuées par un programme structuré.
ü Un algorithme est écrit en utilisant un langage de description d’algorithme
(LDA).
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Algorigramme
|
Traduction graphique de
l’algorithme. Aussi appelé Organigramme.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
II. Structure d’un programme
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
1. L’en-tête
|
Algorithme nom de l’algorithme ;
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
2. Déclaration des constantes, variables
|
Const
Listes des constantes ;
Var
Listes des variables ;
Struct
Listes des structures ;
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
3. Définition des fonctions et procédures
|
Fonction
Listes des
fonctions ;
Procédure
Listes des
procédures ;
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
4. Définition du corps de l’algorithme
|
Début
action 1 ;
action 2 ;
.
.
.
action n ;
Fin
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
II.1. Type de données:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
booléen : valeur pouvant être soit vraie, soit fausse.
entier : valeur numérique entière.
réel : valeur numérique codée avec une mantisse et un
exposant.
caractère : octet correspondant à un code ASCII.
chaîne de caractères : ensemble de caractères.
tableau de données : ensemble de données de même type (exemple : tableau
d’entiers, tableau de réels).
Toutes ces
données sont codées sous forme d'octets en mémoire.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
II.2. Syntaxe de déclaration:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Déclaration
des constantes :
|
Const NomConstante : [Type] = Valeur ;
Exemple : Const
Pi=3.141559 ;
Const NombreLettres :
Entier = 10 ;
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Déclaration
des variables :
|
Var NomVariable : [Type] ;
Exemple :
Var Lettre : Caractère ;
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Définition
des fonctions et des procédures :
|
Fonction NomFonction
(NomV1 : [Type], NomV2 : [Type],…) : [TypeDeRetour] ;
Const ~ déclaration des constantes locales ~ Var ~ déclaration des variables locales ~ Début ~ description des actions effectuées par la fonction ~ Fin
Exemple :
Fonction Moyenne
(Note1 : Réel, Note2 : Réel) : Réel ;
Var Intermediaire : Réel ; Début Intermediaire <-- Note1 + Note2 ; Intermediaire <-- Intermediaire / 2 ; Moyenne <-- Intermediaire ; Fin
Les procédures : Une fonction se différencie d’une procédure par le fait
qu’elle fournit un résultat.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Syntaxe de
l’appel d’une fonction :
|
Variable
<-- NomFonction (NomEntrée1, NomEntrée2,…) ;
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Définition du
programme principal :
|
· Le programme principal consiste en une suite
d’opérations élémentaires faisant souvent appel à des fonctions ou
procédures. Ces différentes opérations sont mentionnées en utilisant les
structures algorithmiques décrites au .
· Le programme principal est délimité par les
mots-clefs Début et Fin.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
III. Les opérateurs :
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
IV. Les Structures algorithmiques
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Les
structures algorithmiques sont réparties en 3 catégories :
- structures linéaire d'opérations;
- structures alternatives (ou conditionnelles) ou de
choix : en fonction d'une condition, le programme exécute des opérations
différentes;
- structures itératives ou répétitives: sous
contrôle d'une condition, une séquence d'opérations est exécutée
répétitivement.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
IV.1. Structure linéaire :
|
Les actions successives
sont mentionnées les unes après les autres.
Syntaxe :
Action1 Action2 ... ActionN
Exemple : Calcul d’un produit de 2
nombres
Algorithme
Calcul
du produit ;
Var a,b : réel ; p : réel;
Début
Afficher (‘Saisir le nombre a ‘) ; Saisir (a) ; Afficher (‘Saisir le nombre b ‘) ; Saisir (b) ; p <-- a * b ; afficher (p) ;
Fin
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
IV.2. Structure alternatives :
|
Structure SI
... ALORS ...
Une condition est testée pour déterminer si l’action ou le groupe
d’actions suivant doit être exécuté.
Syntaxe :
Si Condition Alors
Actions
FinSi
Exemple : Calcul d’une racine carrée
Algorithme Racine
carrée ;
Var
x: réel ;
r: réel ;
Début
Afficher (‘Saisir le
nombre x‘) ;
Saisir (x) ;
Si x > 0 Alors
r <-- racine
(x) ;
afficher (r) ;
FinSi
Fin
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure SI ... ALORS ...SINON
...
Une condition est testée
pour déterminer quelle action ou quel groupe d’actions doit être exécuté.
Syntaxe :
Si Condition Alors
Actions1
Sinon
Actions2
FinSi
Exemple : Calcul d’une racine carrée
Algorithme Calcul racine carrée ;
Var
x: réel ;
r: réel ;
Début
Afficher (‘Saisir le nombre x‘) ;
Saisir (x) ;
Si x < 0 Alors
afficher (‘x est négatif’) ;
Sinon
r <-- racine (x) ;
afficher (r) ;
FinSi
Fin
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure de
choix multiple
Une donnée est comparée successivement à des valeurs constantes :
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Syntaxe 1 :
Suivant Donnée faire
Valeur1 : Actions1
Valeur2 : Actions2
...
ValeurN : ActionsN
Sinon
ActionsN+1
FinSuivant
|
Syntaxe 2 :
Cas Donnée
Valeur1 : Actions1
Valeur2 : Actions2
...
ValeurN : ActionsN
Sinon
ActionsN+1
FinCas
|
Syntaxe 3 :
Si Donnée=Valeur1 alors
Actions1
Sinon Si Donnée=Valeur2 alors
Actions2
...
Sinon Si Donnée=ValeurN alors
ActionsN
Sinon
ActionsN+1
FinSi
FinSi
...
FinSi
FinSi
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
Remarques : la partie « ActionsN+1 » peut ne pas exister.
Toutes
ces syntaxes sont équivalentes.
Plusieurs valeurs différentes peuvent être regroupées sur une même
ligne si les actions correspondantes sont identiques.
Exemple : Affichage de la nature d’un caractère
Algorithme Affichage nature ;
Var
c: caractère ;
Début
Afficher (‘Taper un
caractère‘) ;
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
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
IV.3. Structure itératives (ou répétitives)
|
Structure REPETER ... JUSQUA
...
Une action ou un groupe
d’actions est exécuté répétitivement jusqu'à ce qu’une condition soit
vérifiée.
Syntaxe :
Répéter
Actions
Jusqu’à Condition
Remarque : la vérification de la condition s’effectue après les actions.
Celles-ci sont donc exécutées au moins une fois.
Exemple : exécution répétitive d’un programme
Algorithme exécution répétitive ;
Var
a,b : réel ;
p : réel ;
c : caractère ;
Début
Répéter
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
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure
TANT QUE ... FAIRE ...
TantQue Condition
Faire
Actions
FinFaire /FinTantque
Remarque : la vérification de la condition
s’effectue avant les actions. Celles-ci peuvent donc ne jamais être
exécutées.
Exemple : Exécution répétitive d’une
action.
Algorithme Exécution répétitive d’une
action ;
Début
Tant
Que Non (ToucheAppuyée)
Faire
Afficher (‘Attente’) ;
FinFaire
Fin
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure POUR Indice DE ... A
.... FAIRE ...
Une action ou un
groupe d’actions est exécuté répétitivement un certain nombre de fois : le
nombre dépend des valeurs initiale et finale données à la variable « Indice
».
Syntaxe :
Pour Indice De
Val1 A Val2
Faire
Actions
FinFaire / Fin
pour
Remarques : les valeurs initiale (Val1) et finale (Val2) sont incluses dans le
comptage.
Il est éventuellement
possible de spécifier un autre pas d’incrémentation (+2,+10,-1....)
Exemple :
Affichage d’une ligne d’étoiles
Algorithme
Affichage d’une ligne d’étoiles ;
Var
i : entier ;
Début
Pour
i de 1 à 80
Faire
Afficher (‘*’) ;
FinFaire
Fin
Remarque :
cette structure algorithmique peut en fait être remplacée par une structure
TANT QUE ... FAIRE …
Var
i : entier ;
Début
i <-- 1
Tant
Que i ≥ 80
Faire
Afficher (‘*’) ;
i <-- i +1 ;
FinFaire
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Essentiel I : Introduction à l'algorithmique
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire