Vous êtes sur la page 1sur 6

Cours de Programmation par Ecclsiaste DEUDJUI (+237) 9 !

9 37 clesio7"#a$oo%&r


1
CHAPITRE 2 :
STRUCTURE ET OBJETS DUN ALGORITHME


I- STRUCTURE
Un algorithme est caractris par son nom et comporte trois grandes parties :
- Len-tte : liste des objets utiliss par lalgorithme. On lappelle aussi dclaration.
- Les traitements : manipulation des objets connus pour obtenir des objets cherchs.
Il est possible de les expliciter laide des commentaires.
- La gestion des rsultats : dans cette partie il est question de restituer les rsultats
obtenus. On peut le faire soit en les affichant lcran, soit en les stockant dans un
fichier physique de lordinateur.
NB : tant donn quun programme cest la traduction dun algorithme dans un langage
comprhensible par lordinateur, il comprendra lui aussi les 3 parties cites ci-haut.

II- OBJETS
II-1) Les caractristiques dun objet :
Pour quun algorithme soit correctement implment, il a besoin de plusieurs objets
dans sa structure. Les principaux objets sont les variables et les constantes.
Un objet est caractris par :
Un nom ou identificateur : il permet didentifier lobjet dans lalgorithme.
Un type : il dfinit lensemble dans lequel lobjet prend ses valeurs.
Une nature : elle indique si lobjet est une constante ou une variable.
Cours de Programmation par Ecclsiaste DEUDJUI (+237) 9 ! 9 37 clesio7"#a$oo%&r


2
Un sens : il indique si lobjet est en entre ou en sortie.
Une utilit : elle indique quoi sert lobjet dans lalgorithme.
Une valeur : cest une constante que prend lobjet un moment donn.
II-2) Dfinitions et Dtails :
A- Dfinitions
- Une variable est un emplacement mmoire destin stocker une donne pouvant
changer au cours de lexcution du programme.
- Une constante est une variable dont la valeur est connue davance et ne change
pas au cours de lexcution du programme.
B- Dtails sur les caractristiques des objets
1- Le nom : il est unique dans le programme et doit tre compos de caractres
alphanumriques. cependant :
a. Aucun nom ne doit commencer par un caractre numrique.
b. En langage Pascal, les noms dobjets ne sont pas sensibles la casse. Mais il
existe des langages o cest le cas, comme en PHP ou en C++.
c. Les caractres accentus ne sont pas autoriss, de mme que les espaces.
d. Un nom dobjet ne doit pas tre le mme que celui dun mot-cl (Var, Type)
2- Le type : il existe plusieurs types auxquels peut appartenir un objet. On peut citer :
a. Le type entier : il sagit des nombres entiers appartenant [-32 768, 32 767]
b. Le type rel : il sagit pratiquement de lensemble des nombres rels.
c. Le type caractre : il sagit dun caractre alphanumrique ou spcial (@, $..).
Ce type dobjet a une valeur dlimite par des cotes. exemple : M <> m
d. Le type chane : il sagit dun objet pouvant contenir une chane de caractres.
La longueur maximale de ce type est de 255.
e. Le type boolen : il autorise lobjet ne prendre que les valeurs Vrai ou Faux.
Cours de Programmation par Ecclsiaste DEUDJUI (+237) 9 ! 9 37 clesio7"#a$oo%&r


3
f. Les types prdfinis : la plupart des langages offrent des possibilits
permettant au programmeur de crer ses propres types. Cela est trs utile
pour optimiser les algorithmes (par exemple les types intervalle et numrer).

III- OPRATIONS ET INSTRUCTIONS DE BASE
III-1) Les oprations :
A- Les oprations arithmtiques
1- Laddition : elle est note (+) et sapplique en gnral sur les objets de type
numrique (entiers, rels). Elle a pour but de calculer leur somme. Lorsquon
lapplique sur des objets de type texte, elle effectue ce quon appelle la
concatnation. Exemple : maman + bonjour = mamanbonjour
2- La soustraction : elle est note (-) et ne sapplique que sur des objets de type
numrique. Elle a pour but deffectuer une soustraction entre deux objets.
3- La multiplication : elle est note (*) et sapplique pour calculer le produit des objets.
4- La division : il existe deux types de divisions en algorithme :
a. La division relle note (/) permet dobtenir un rsultat dcimal exact. Son
rsultat est forcment un nombre rel. Exemple : 7 / 2 = 3.5
b. La division entire note (div) ne conserve que la partie entire du rsultat
obtenu. Elle est utilise uniquement avec les entiers. Exemple : 7 div 2 = 3
5- Le modulo : il est not (mod) et donne le reste de la division entire entre 2 entiers
(uniquement les entiers). Exemple : 7 mod 2 = 1
NB : lordre de priorit des oprations ci-dessus est le suivant : multiplication, division,
addition et soustraction. On peut cependant le redfinir en effectuant un bon parenthsage.
B- Les oprations logiques (ou connecteurs logiques)
Les oprations logiques sappliquent essentiellement sur des objets de type boolen ou
alors sur des comparaisons. Elles permettent de tester la simultanit, lexclusion, ou
encore la ralisation ou non de certains vnements. Les plus utilises sont :
Cours de Programmation par Ecclsiaste DEUDJUI (+237) 9 ! 9 37 clesio7"#a$oo%&r


4
1- ET : cette opration sapplique entre deux objets ou groupes dobjets. Elle est donc
binaire. Elle permet de vrifier si ces objets sont raliss (Vrai) en mme temps.
2- OU : galement binaire, il vrifie si lun au moins des objets quil relie est ralis.
3- NON : cest une opration unaire car elle ne sapplique que sur un seul objet ou
groupe dobjets. Elle permet de vrifier si cet objet nest pas vrai.
C- Les oprations de comparaison
1- galit (=) : permet de vrifier si deux objets ont la mme valeur.
2- Ingalit (<> ou ) : permet de vrifier si deux objets nont pas la mme valeur.
3- Infriorit (<) : permet de vrifier si lobjet gauche est strictement infrieur lobjet
de droite. On a aussi linfriorit simple (<= ou ).
4- Supriorit (>) : permet de vrifier si lobjet de gauche est strictement suprieur
lobjet de droite. On a aussi la supriorit simple (>= ou ).
Remarques :
Deux objets boolens sont gaux si et seulement si ils ont la mme valeur de vrit.
La comparaison entre deux caractres est quivalente la comparaison entre leur
numro de code ASCII. Ainsi, a > A car 97 > 65. 1 < M car 49 < 77.
La comparaison entre 2 chanes de mme casse se fait comme dans un dictionnaire.
Sinon les caractres sont compars un un en commenant gauche.
III-2) Les instructions de base :
A- Laffectation
Elle est note ( ). Elle consiste affecter un objet la valeur dun autre objet de
type compatible. Elle peut galement affecter un objet la valeur dune expression
arithmtique. Exemples : X Y ou encore : X (Y+Z) * W
B- La lecture ou saisie
Cest le mode communication entre lutilisateur et la mmoire centrale. Cest par ce
moyen quon peut interagir avec le programme laide du clavier.
Cours de Programmation par Ecclsiaste DEUDJUI (+237) 9 ! 9 37 clesio7"#a$oo%&r


5
Syntaxe : Lire(objet) ou encore Saisir(objet1, objet2, objet3)
C- Lcriture ou affichage
Cest la communication entre lordinateur et lutilisateur travers lcran. Elle permet de
donner les instructions suivre et galement dafficher les rsultats des traitements.
Syntaxe : Ecrire(objet) ou Afficher(objet1, objet2) ou encore Ecrire(Cest beau)
NB : lapostrophe doit tre double pour tre comprhensible par la fonction Ecrire.

IV- RSUM
Nous venons de voir les lments ncessaires la fabrication dun algorithme. De
faon gnrale, la structure finale dun programme ressemblera donc ceci :
Algorithme <nom de lalgorithme>
[const <liste des constantes>=<valeurs>] {les crochets signifient que lobjet est facultatif}
[type <liste des types prdfinis>=<dfinition des types prdfinis>]
[var <liste des variables> :<type>] {fin de la partie Dclarations}
DEBUT {corps de lalgorithme}
<LISTE DES ACTIONS>
FIN.
NB : dans un programme les mots-cls const, type et var sont crits une seule fois. C'est-
-dire que sil y a plusieurs constantes on crit const puis on dfinit la liste des constantes.

EXEMPLE : crire un algorithme qui fait la somme de deux nombres entiers
Algorithme Somme
Var nbre1, nbre2, S : entier
DEBUT
Cours de Programmation par Ecclsiaste DEUDJUI (+237) 9 ! 9 37 clesio7"#a$oo%&r


6
Lire(nbre1, nbre2)
S nbre1 + nbre2
Ecrire(S)
FIN


TRAVAUX DIRIGS
1. Identifier les noms de variables qui sont corrects en Pascal : ma variable ; ma_variable ;
m1VARIABLE ; 1variable ; mon_lment ; debut ; +value ; value+ ; $NOTE ; em@il
2. Identifier les caractres dont le code ASCII vaut : 8 13 32 46 55 64 65 97 253
3. crire un algorithme qui calcule la surface dun cercle dont lutilisateur entre le rayon.
4. crire un algorithme qui permute les valeurs de deux variables remplies par lutilisateur,
puis faire le mme programme pour permuter 3 variables.
5. crire un algorithme qui prend en entre le nombre de kilomtres parcourus, le nombre de
litres dessence consomms, et la dure du parcours (en minutes). Puis le programme
retourne la vitesse moyenne (km/min) ainsi que la consommation au kilomtre.
6. crire un programme qui permet de saisir 3 notes dun tudiant, les coefficients de ces
notes, et qui ensuite renvoie la moyenne de cet tudiant.
7. crire un programme qui renvoie le discriminant de la fonction f(x) = ax + bx c, avec a, b,
et c rentrs par lutilisateur. Le programme calculera ensuite la valeur de f(x) pour x=2.

Vous aimerez peut-être aussi