Вы находитесь на странице: 1из 7

Chapitre 2 – Concepts de base de l'algorithmique Page 1/7

Chapitre 2 – CONCEPTS DE BASE DE L'ALGORITHMIQUE

1. Les types de données de base

En algorithmique, on distingue cinq types de base:

- 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)

- chaîne de caractères (suite de 0 ou plusieurs caractères)

- entier (les nombres entiers positifs ou négatifs)

- réel (les nombres réels positifs ou négatifs)

- 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. Notions de variable et de constante

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.

Une variable est caractérisée par


- l’endroit où elle se trouve en mémoire : c’est son adresse,
- la nature de l’information (nombre, caractère, …) qu'elle contient: c’est son type,
- son contenu : c’est sa valeur.

La valeur d’une variable peut être modifiée durant l'exécution du programme.

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.

2-3. Déclaration des variables et des constantes

Toute variable ou constante doit être déclarée avant sa première utilisation.

2-3-1. Déclaration d'une variable

La déclaration d’une variable consiste à la réservation d’un emplacement mémoire, auquel on


donne un nom unique appelé identificateur et par lequel on peut accéder à sa valeur.

La syntaxe de déclaration d’une variable est:

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

2-3-2. Déclaration d'une constante

La déclaration d’une constante est toujours associée à son initialisation (première valeur).

La syntaxe de déclaration d’une constante est:

identificateur : type = valeur

Exemple

MAX : entier = 32767

3. Structure générale d’un algorithme

Programme nom du programme


Type
Définition de types
Constante
Déclaration de constantes
Variable
Déclaration de variables

Définition de sous programmes

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

4. Les opérations de l’algorithmique

opérateur ou mot clé


Type Exemples de valeurs opérations possibles
correspondant
addition, soustraction,
+, -, *, /,
réel -15.69 , 0.36 multiplication, division,

comparaison
addition, soustraction,
+, -, *, div, mod,
entier -10 , 0 , 3 , 689 multiplication, division, modulo,
, , , , = =, 
comparaison

successeur, prédécesseur, ordre, suc, pred, ord, car,


caractère 'B' , 'h' , '£' , '?'
caractère, comparaison , , , , = =, 

"Bonjour" , "93000",
longueur, concaténation, longueur , + ,
chaîne "toto@caramail.com"
comparaison , , , , = =, 

booléen VRAI , FAUX négation, conjonction , disjonction NON , ET , OU

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 est:


- soit une variable ou une constante,
- soit une valeur (par exemple : "bonjour", 45),
- soit une combinaison de variables, de constantes, de valeurs et d'opérateurs (par exemple : 2 * r *
3.14)
Elle est évaluée durant l’exécution du programme, et possède une valeur (son évaluation) et un
type.
Par exemple, supposons que rayon soit une variable de valeur 5. Alors l'expression 2 * rayon * 3.14
vaut 31.4

6. Les expressions conditionnelles

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.

6-1. Les conditions simples

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’.

6-2. Les conditions complexes

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)

( (a +3 = = b) ET (c < 0) ) OU ( (a = = c *2) ET (b c) )

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. Les instructions de base

Les instructions élémentaires les plus courantes sont :


- l'affectation: le fait de donner une valeur à une variable
- la lecture au clavier
- l'écriture à l'écran

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
x5
xy
x5+8
x5+y

L'instruction d’affectation est formée de deux parties :


- A gauche du symbole  on trouve toujours le nom d’une variable destinée à recevoir une valeur.
- A droite, on trouve l’expression qui va donner la valeur qu’on veut affecter à la variable en
question.

L’instruction d’affectation agit en deux temps :

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

Lire(variable1 , variable2, …, variableN)

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

L'instruction d'écriture permet d'afficher des expressons à l'écran.

Syntaxe

Ecrire(expression1, expression2, ..., expressionN)

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

Ecrire("Voici les résultats : x = ", x, " et y = ", y)


Nous aurons à l’écran (en supposant que les valeurs de x et y sont respectivement 5 et 10) :
Voici les résultats : x = 5 et y = 10

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)

Ecrire("Donner la valeur de l'entier y:")


Lire(y)

Ecrire("Avant échange: x vaut ",x, "et y vaut ",y)

tmp = x
x=y
y = tmp

Ecrire("Après échange: x vaut ",x, "et y vaut ",y)


Fin

Docteur F. CAMARA/ESTM

Вам также может понравиться