Vous êtes sur la page 1sur 23

Université Cheikh Anta Diop de DAKAR

Faculté des Sciences et techniques


Département Mathématiques et Informatique

Chapitre 2 – CONCEPTS DE BASE DE


L'ALGORITHMIQUE
Cours d’algorithmique et programmation en
LANGAGE C
Licence Bioinformatique
2020

Dr Ibrahima DIANE
Notions de variable et de constante
 Les variables
 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
 Permettent de stocker des valeurs.
 Une variable est caractérisée par:
 Son identifiant : nom de la variable
 L’endroit où elle se trouve en mémoire : adresse,
 La nature de l’information (nombre, caractère, …) : son type
 Son contenu : sa valeur.
 La valeur d’une variable peut être modifiée durant
l'exécution du programme.
 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
FST DMI Dr I. DIANE 2020
Types de données de base

 En algorithmique, on distingue 5 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)

3 FST DMI Dr I. DIANE 2020


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 du programme
Fin

4 FST DMI Dr I. DIANE 2020


Structure générale d’un algorithme
 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 sous
programmes.
 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.

5 FST DMI Dr I. DIANE 2020


Déclaration des variables et des
constantes
 Déclaration d'une variable

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

 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
 Exemple a : entier
x, y, z: entier

6 FST DMI Dr I. DIANE 2020


Déclaration des variables et des
constantes
 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 = valeur

Exemple

MAX = 32767

7 FST DMI Dr I. DIANE 2020


Les opérations de l’algorithmique

8
FST DMI Dr I. DIANE 2020
Les opérations de l’algorithmique

 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 le confondre avec un nom de variable).
 Une valeur de type chaîne doit être entre guillemets (sinon le compilateur pourrait
le 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.

9 FST DMI Dr I. DIANE 2020


Les opérations de l’algorithmique
 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 @
 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.
10
FST DMI Dr I. DIANE 2020
Opération sur les booléennes
 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) :

11 FST DMI Dr I. DIANE 2020


Les expressions

 Une expression est:


 soit une variable ou une constante,
 soit une valeur littérale (écrite telle qu'elle dans le programme,
par exemple : "bonjour", 45),
 soit une combinaison de variables, de constantes, de valeurs
littérales 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

12 FST DMI Dr I. DIANE 2020


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

13 FST DMI Dr I. DIANE 2020


Les expressions conditionnelles

 Les conditions complexes : Les conditions (ou


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

14 FST DMI Dr I. DIANE 2020


Les expressions conditionnelles
 Une condition composée de deux conditions simples reliées par ET est
vraie si les deux conditions sont vraies.
 (a < 0 ) ET (b < 0) est vraie si a < 0 est vraie et 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.
 (a <0) OU (b < 0) est vraie si a < 0 ou 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.
 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.

15 FST DMI Dr I. DIANE 2020


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

16 FST DMI Dr I. DIANE 2020


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 =

 Les instructions d’affectation sont formées 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 :


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

17 FST DMI Dr I. DIANE 2020


L’affectation
Remarques
 On ne peut affecter de valeur qu’à une variable. Il est impossible
d’affecter une valeur à une expression. Ainsi, 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. Ainsi, par exemple, l’instruction a = a + 3 a un
sens en programmation. 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.

18 FST DMI Dr I. DIANE 2020


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

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

19 FST DMI Dr I. DIANE 2020


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

 Syntaxe
 Ecrire(expression1, expression2, ...)

 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("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
 Ecrire("Bonjour!")
 Celle-ci permet d'afficher la chaîne littérale Bonjour! à l'écran

20 FST DMI Dr I. DIANE 2020


Exemple 1 : Algorithme
Programme AdditionEntier
Variables
a , b, resultat: entier
Début
Ecrire(Donnez la premiere valeur )
Lire(a)
Ecrire( Donnez la deuxieme valeur )
Lire(b)
resultat =a+b
Ecrire ( la somme de  ,a, et de  ,b , donne  ,resultat)
Fin

21 FST DMI Dr I. DIANE 2020


Exemple 2 : Algorithme
Programme AfficheSalutation

Variables
nom, salutation : chaine de cararctere // Déclaration de variables

Début

Écrire ( "Quel est votre nom ?") // Affichage d'une chaîne

Lire (nom) // Lecture d'une valeur

salutation = "Bonjour " + nom ; // Affectation

Écrire (salutation) // Affichage d'une chaîne

Fin
22
FST DMI Dr I. DIANE 2020
FIN
23 FST DMI Dr I. DIANE 2020

Vous aimerez peut-être aussi