Beruflich Dokumente
Kultur Dokumente
- caractère (lettre, chiffre, ponctuation, espace, retour chariot,… et plus généralement toutes les
touches que l'on peut trouver sur une machine à écrire)
- booléen (les variables booléennes n’ont que deux valeurs possibles: soit VRAI, soit FAUX)
A partir de ces types de base, on peut définir des types plus complexes appelés types composés.
2-1. Variable
Les variables sont des données manipulées par le programme lors de son exécution. Elles
correspondent à des emplacements situés dans la mémoire vive de l’ordinateur et permettant de
stocker des valeurs.
2-2. Constante
Une constante est, comme une variable, un emplacement de la mémoire mais sa valeur ne peut pas
changer au cours de l'exécution du programme.
identificateur : type
Docteur F. CAMARA/ESTM
Chapitre 2 – Concepts de base de l'algorithmique Page 2/7
Exemple
a : entier
permet de réserver un emplacement mémoire pour le stockage d’un entier qui sera nommé a
dans la suite du programme.
On peut déclarer en même temps plusieurs variables de même type en séparant les identificateurs
par des virgules.
Exemple
x, y, z : entier
La déclaration d’une constante est toujours associée à son initialisation (première valeur).
Exemple
Début
instructions
Fin
Un algorithme commence par le mot Programme suivi de son identificateur (le nom du
programme).
Ensuite viennent la définition de types annoncée par le mot Type, la déclaration de constantes,
annoncée par le mot Constante puis celle de variables, annoncée par le mot Variable et la
définition de procédures et de fonctions.
Le corps du programme commence par Début et se termine par Fin.
On peut insérer des commentaires, soit entre les balises /* */, soit après // jusqu'à la fin de la ligne.
Remarque:
Les types de base font partie du langage et n'ont pas à être définis par le programmeur.
Docteur F. CAMARA/ESTM
Chapitre 2 – Concepts de base de l'algorithmique Page 3/7
"Bonjour" , "93000",
longueur, concaténation, longueur , + ,
chaîne "toto@caramail.com"
comparaison , , , , = =,
Remarques
- Pour les entiers, la division est notée div. Elle est nommée division entière et ne donne que le
chiffre avant la virgule du résultat (elle renvoie un entier).
Les entiers supportent une opération supplémentaire appelée modulo, notée mod et qui renvoie le
reste de la division entière.
Exemple:
7 div 2 donne 3
7 mod 2 donne 1
- Une valeur de type caractère doit être ente apostrophes (sinon le compilateur pourrait la confondre
avec un nom de variable).
- Une valeur de type chaîne doit être entre guillemets (sinon le compilateur pourrait la confondre
avec un nom de variable).
- Les caractères sont comparés selon l’ordre du code ASCII. C’est ainsi qu’on peut comparer tous
les caractères entre eux. Par exemple le caractère 'Z' (majuscule), de code ASCII 90 est inférieure
au caractère 'a' (minuscule) de code ASCII 97.
Soit la variable c de type caractère:
succ(c) permet d’obtenir le caractère qui suit le caractère c selon le code ASCII
pred(c) permet d’obtenir le caractère qui précède le caractère c selon le code ASCII
ord(c) permet d’obtenir code ASCII du caractère c.
car(n) permet d’obtenir le caractère correspondant au code ASCII n.
Par exemple :
ord(‘A’) vaut 65
succ(‘A’) vaut ‘B’
pred(‘A’) vaut @
Docteur F. CAMARA/ESTM
Chapitre 2 – Concepts de base de l'algorithmique Page 4/7
car(65) donne ‘A’
- Pour le type chaîne, L’opérateur + sert à concaténer des chaînes de caractère, ce qui signifie
transformer plusieurs chaînes en une seule en les ajoutant les unes à la suite des autres.
Exemples :
Bonjour + à tous donne Bonjour à tous
longueur(Bonjour) donne le nombre de caractères de la chaîne Bonjour, c’est à dire 7.
- Pour le type booléen, les deux seules valeurs possibles sont Vrai et FAUX. Les opérateurs de base
ET, OU, NON sont définies par la table de vérité suivante (étant données deux variables A et B de
type booléen) :
A B A ET B A OU B NON A
VRAI VRAI VRAI VRAI FAUX
VRAI FAUX FAUX VRAI FAUX
FAUX VRAI FAUX VRAI VRAI
FAUX FAUX FAUX FAUX VRAI
5. Notion d'expression
Une expression conditionnelle (ou expression logique ou expression booléenne ou condition) est
une expression dont la valeur est soit VRAI soit FAUX. On peut donc affecter une expression
conditionnelle à une variable booléenne. Il existe plusieurs types d’expressions conditionnelles.
Une condition simple est une comparaison de deux expressions de même type.
Exemples
a<0
op = =‘s’
(a + b - 3) * c = = (5 * y –2) / 3
Pour les comparaisons de caractères, on utilise l'ordre ASCII, qui respecte l’ordre alphabétique. Une
lettre placée avant une autre dans l'ordre alphabétique sera inférieure à l'autre. Par exemple: ‘a’ est
Docteur F. CAMARA/ESTM
Chapitre 2 – Concepts de base de l'algorithmique Page 5/7
inférieur à ‘b’, mais ‘s’ est supérieur à ‘m’.
Les conditions peuvent aussi être complexes, c'est à dire formées de plusieurs conditions simples ou
variables booléennes reliées entre elles par les opérateurs logiques ET, OU, NON.
Exemples
(a < 0) ET (b < 0)
Une condition composée de deux conditions simples reliées par ET est vraie si les deux conditions
sont vraies.
Exemple: (a < 0 ) ET (b < 0) est vraie si a < 0 est vraie et si b < 0 est vraie
Une condition composée de deux conditions simples séparées par OU est vraie si au moins l'une des
conditions simples est vraie.
Exemple: (a <0) OU (b < 0) est vraie si a < 0 ou si b < 0 ou si a et b sont négatifs.
Une condition précédée par NON est vraie si la condition simple est fausse et inversement.
Exemple: NON (a < 0) est vraie si a >=0
L'usage des parenthèses permet de régler d'éventuels problèmes de priorité des opérateurs logiques.
7-1. L’affectation
L’affectation consiste à mettre une valeur dans une variable (ce qui revient à changer le contenu de
cette variable). La nouvelle valeur est évaluée à partir d'une expression.
En algorithmique, pour représenter l’opération d’affectation, on va utiliser le symbole
Exemples
x5
xy
x5+8
x5+y
Docteur F. CAMARA/ESTM
Chapitre 2 – Concepts de base de l'algorithmique Page 6/7
- Tout d’abord elle détermine la valeur de l’expression située à droite du symbole
- puis elle range le résultat dans la variable située à gauche.
Remarques
- On ne peut affecter de valeur qu’à une variable. Il est impossible d’affecter une valeur à une
constante ou à une expression. Par exemple, l’instruction a + 5 b n’a pas de sens.
- Il est possible de retrouver la même variable à droite et à gauche de l’expression. Par exemple,
l’instruction a a + 3 a un sens. Cela signifie que l’on évalue a + 3 avec l'ancienne valeur de a et
qu’on range le résultat dans a. La valeur de a sera donc augmentée de 3 par cette opération.
7-2. La lecture
L’instruction de lecture permet au programme de lire des données entrées au clavier par l'utilisateur.
Cette instruction affecte les valeurs entrées au clavier à des variables du programme..
Syntaxe
Exemples
Lire(x)
Cette instruction lit la valeur entrée au clavier et l'affecte à la variable x
Lire(x, y)
Cette instruction lit la première valeur entrée au clavier et l'affecte à x, puis lit la deuxième valeur
et l'affecte à y
7-3. L'écriture
Syntaxe
Exemples
Ecrire(ch)
Cette instruction permet d'afficher la valeur de la variable ch à l'écran
Si ch est une chaîne qui vaut "toto", cette instruction affichera toto à l'écran
Ecrire("Bonjour!")
Celle-ci permet d'afficher la chaîne Bonjour! à l'écran
Ecrire(a, b)
Si a vaut 5 et b vaut 10, on obtient alors à l'écran:
5 10
Docteur F. CAMARA/ESTM
Chapitre 2 – Concepts de base de l'algorithmique Page 7/7
On peut mélanger l'affichage de valeurs littérales et de variables. Cela est particulièrement utile si
on veut voir apparaître un libellé (texte accompagnant la saisie des données ou l'édition des
résultats, permettant de guider l'utilisateur).
Exemple
8. Exemple d'algorithme
Algorithme pour échanger le contenu de deux variables saisies au clavier par l'utilisateur.
Programme Echange
Variable
x , y : entier
tmp : entier
Début
Ecrire("Donner la valeur de l'entier x:")
Lire(x)
tmp = x
x=y
y = tmp
Docteur F. CAMARA/ESTM