2023 Cours3suite
2023 Cours3suite
2023 Cours3suite
Unité de Formation et de
Recherche des Sciences et
Technologies
Département d’Informatique
Le corps de l’algorithme /
programme
Janvier 2021
©Youssou DIENG
ydieng@univ-zig.sn
ELEMENTS DE BASE EN L'ALGORITHMIQUE ET EN PROGRAMMATION
Le corps d’un algorithme/programme contient les instructions et les opérations à exécuter une
à une pour aboutir au résultat cherché.
1 - Les instructions
Une instruction est un ordre qui permet de spécifier à la machine l’action à effectuer.
Les programmes et les algorithmes, sont constitués d’instructions qui contiennent, pour la
plupart, des expressions et des opérateurs.
Une instruction représente une tâche à accomplir par l’ordinateur. Sauf mention
explicite, les instructions d’un programme s’exécutent les unes après les autres, dans l’ordre où
elles ont été écrites à l’intérieur du programme. Cette affirmation peut vous paraitre banale et
évidente à première vue. L’expérience montre cependant qu’un grand nombre d’erreurs
sémantiques dans les programmes informatique sont la conséquence d’une mauvaise
disposition des instructions. Plus vous progresserez dans l’art de la programmation, plus vous
vous rendrez compte qu’il faut être extrêmement attentif à l’ordre dans lequel vous placez vos
instructions les unes derrière les autres.
Deux instructions consécutives dans un programme sont séparées un point-virgule. Sur
l’exemple ci-dessous, on a deux instructions d’affectation ; une sur chaque ligne.
Page 1 sur 7
ELEMENTS DE BASE EN L'ALGORITHMIQUE ET EN PROGRAMMATION
1- A l’utilisateur de rentrer des valeurs au clavier pour qu’elles soient utilisées par le
programme : c’est la lecture.
2- Au programme de communiquer des valeurs à l’utilisateur en les affichant à l’écran :
c’est l’écriture
Les primitives de lecture et d'écriture en Pascal sont :
- read pour la lecture
- write pour l’écriture
La syntaxe de l’instruction write est :
o write (<identificateur>) ;
o write (<identificateur_1>, <identificateur_2>, …, <identificateur_n>) ;
o write (<valeur>) ;
o write (<valeur_1>, <valeur_2>, …,<valeur_n>) ;
o write (‘<message>’) ;
o write (‘<message_1>’, ‘<message_2>’, …, ‘<message_n>’) ;
o write (‘<message>’, <identificateur>) ;
Le message est une constante chaîne de caractères non analysée par le compilateur et
elle est restituée comme telle à l’écran lors de l’exécution de l’instruction. L’identificateur est
remplacé par la valeur de la variable correspondante au moment de l’exécution de l’instruction.
La valeur peut être une constante ou une expression. Lorsque l’on veut aller à la ligne après un
affichage, on utilise writeln à la place de write.
Page 2 sur 7
ELEMENTS DE BASE EN L'ALGORITHMIQUE ET EN PROGRAMMATION
Exemples :
write(‘Bienvenue aux nouveaux bacheliers !’) ;
write(100) ;
write(500 + 250) ;
write(‘la valeur de delta est’, delta) ;
Exemples :
readln(a) ;
readln(b, c) ;
Au lieu d'écrire une variable toute seule, l’instruction write permet d’écrire un libellé à
l’écran afin de prévenir l’utilisateur sur sa signification. C’est ce qui est illustré par la figure ci-
après.
Après avoir demandé à l’utilisateur d’entrer les valeurs val1, val2, val3, on peut
demander à l’ordinateur d’afficher les valeurs reçues pour permettre à l’utilisateur de vérifier
que les valeurs rangées en mémoire par l’ordinateur sont les valeurs souhaitées. Le code de la
figure ci-après permet cela.
Page 3 sur 7
ELEMENTS DE BASE EN L'ALGORITHMIQUE ET EN PROGRAMMATION
Exemple: Programme qui lit trois nombres entiers, calcule et affiche leur somme, leur produit
et leur moyenne.
Cela vous laisse une grande liberté pour la mise en page de votre code. Cette règle
comporte cependant une exception, les constantes chaînes de caractères. Une chaîne est
constituée de toute séquence de caractères (y compris les blancs et tabulations) cernée par des
guillemets. Le compilateur interprétera la séquence entière. Vous pouvez écrire par exemple :
La forme n’est pas à suivre, mais la syntaxe est correcte. L’instruction suivante, au
contraire, est incorrecte :
Page 4 sur 7
ELEMENTS DE BASE EN L'ALGORITHMIQUE ET EN PROGRAMMATION
séparés du reste du code grâce à une syntaxe particulière. Ils sont ignorés par le compilateur. Il
existe deux types de commentaires en Pascal :
1- Le premier type de commentaire commence avec la séquence parenthèse ouvrante -
étoile et se termine avec la séquence inverse : une étoile suivie d'une parenthèse
fermante.
(* mettre le commentaire ici *)
Exemple :
4 - Les expressions
Expression arithmétique : On appelle expression arithmétique tout ce qui représente
une valeur numérique. L’expression la plus simple est constituée d’une seule variable, d’une
constante littérale ou d’une constante symbolique. Voici quatre exemples d’expressions :
Page 5 sur 7
ELEMENTS DE BASE EN L'ALGORITHMIQUE ET EN PROGRAMMATION
La valeur d’une constante littérale est sa propre valeur. La valeur d’une constante
symbolique est celle qui a été définie au niveau de l’instruction const. La valeur courante d’une
variable est celle qui lui a été attribuée par le programme. Les expressions complexes sont
constituées d’expressions plus simples avec des opérateurs. Par exemple :
«2+8»
est une expression formée de deux sous-expressions « 2 » et « 8 » et de l’opérateur
d’addition (+). La valeur de cette expression est 10. Vous pouvez aussi écrire des expressions
beaucoup plus complexes comme :
Quand une expression contient plusieurs opérateurs, son évaluation dépend de l’ordre
dans lequel les opérations sont effectuées. Ce concept de hiérarchie est expliqué dans la
précédente section. L’instruction « x := a + 10 ; » calcule l’expression « a + 10 » et attribue le
résultat à « x ».
Expressions booléennes : Une expression booléenne est une expression qui n'a que
deux valeurs possibles, True (vrai) ou False (faux) ; les tests « x = y » (égalité), « x != y »
(inégalité), « x < y », « x <= y », etc. sont des expressions booléennes. Les expressions
complexes sont constituées d’expressions plus simples avec des opérateurs. Par exemple :
« x < 5 and x > 0 »
Cette expression veut dire « x est inclus entre 0 et 5 ? » et elle vaut True si x appartient
à [0, 5[ et False dans le cas contraire.
Page 6 sur 7