Vous êtes sur la page 1sur 17

10/10/2021

Algorithmique
Chapitre 1 : Intro, Types, Variables
Pr: Adil AMMAR

Objectifs

´ Définition de l’algorithme

´ Qu’est ce qu’une variable?

´ Qu’est ce qu’un type ?

´ Qu’est ce qu’une expression?

´ Qu’est ce qu’une affectation?

´ Lecture et écriture

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 2

1
10/10/2021

La résolution informatique d’un problème

on e
réf lexi dag
co

problème algorithme programme

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 3

La résolution informatique d’un problème


énoncé
Résultats d'un problème

Expression de sa réalisation
Exécution du programme
(ALGORITHME)

Transformation Programmation
en binaire éxécutable à l’aide d’un langage

Programme objet Programme source

Compilation

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 4

2
10/10/2021

Qu’est-ce qu’un algorithme

Données Résultats
Algorithme

´ Un algorithme est la description, dans un langage universel


(pseudo-langage), des opérations nécessaires pour résoudre
un problème

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 5

Notion de pseudo langage

´ L’avantage du pseudo-langage est qu’il permet d’écrire tout algorithme de façon


formelle.

´ La phase de programmation se trouvera nécessairement allégée, puisqu’elle se


résumera à adapter l’ensemble des opérations décrites aux spécificités du langage
utilisé.

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 6

3
10/10/2021

Élaboration d’un algorithme

´ Quatre phases principales :

´Analyse du problème

´Expression d’une solution en langage courant

´Expression d’une solution en pseudo-langage

´Tests et Vérification de l’adéquation de la solution

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 7

Structure d’un algorithme

´ Elle est composée d’un entête et d’un corps

´ L’entête spécifie :
´ Le nom de l’algorithme (Nom)

´ Son utilité (But)

´ Quelle sont les données « en entrée », c’est-à-dire les éléments qui sont indispensable
à son bon fonctionnement (Entrée)
´ Quelles sont les données en « sortie », c’est-à-dire les éléments calculés, produits par
l’algorithme (Sortie)

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 8

4
10/10/2021

Structure d’un algorithme

´ Le corps est composé :

´ Du mot clés début

´ D’une suite d’instructions

´ Du mot clés fin

´ Instruction est l’expression dans un pseudo-code ou dans un langage de programmation d’un


ordre fourni à la machine.

´ Les instructions manipulent des objets.

´ Chaque objet possède trois qualificatifs : identificateur, type et une valeur

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 9

Formalisme

´ Exemple de code :
Nom : addDeuxEntiers

But : additionner deux entiers a et b et mettre le résultat dans c

Entrée : a,b : entiers

Sortie : c : entier

Début
cßa+b

Fin

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 10

10

5
10/10/2021

Qu’est ce qu’une variable

´ Une variable est une entité qui contient une information :

´Une variable possède un nom, on parle d’identifiants

´Une variable possède une valeur

´Une variable possède un type qui caractérise l’ensemble des valeurs que peut
prendre la variable

´ L’ensemble des variables sont stockées dans la mémoire de l’ordinateur.

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 11

11

Notions d’identificateur et type

´ Les instructions manipulent des objets. Chaque objet possède trois qualificatifs :
identificateur, type et une valeur :

´L’identificateur : est le nom de l’objet, une suite de lettres et de chiffres dont le


premier caractère est une lettre. Exemples : Prix_unitaire, Taille, Couleur ...

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 12

12

6
10/10/2021

Notions d’identificateur et type

´Le type : détermine l’ensemble des valeurs dans lequel l’objet prend ses
valeurs. Exemples : entier, réel, caractère, chaîne de caractères

´La valeur : de l’objet est un élément quelconque de l’ensemble de définition


décrit par son type. Exemples : Prix_unitaire = 12345,5 ; Taille = 180

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 13

13

Les types simples

´ Il y’a deux grandes catégories de type simple :

´ Ceux dans le nombre des éléments est fini, les dénombrable

´ Et ceux dans le nombre des éléments est infinies, les indénombrables

´ En mathématiques, un ensemble est dit dénombrable, ou infini dénombrable, lorsque


ses éléments peuvent être listés sans omission ni répétition dans une suite indexée par
les entiers. Certains ensembles infinis, au contraire, contiennent « trop » d’éléments
pour être parcourus complètement par l’infinité des entiers et sont donc dits « non
dénombrables »

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 14

14

7
10/10/2021

Les types simples

´ Types simple dénombrable

´ Il y’a le type booléen, les variables ne peuvent prendre que les valeurs VRAI ou FAUX

´ Il y’a les caractères

´ Il y’a les entiers (positifs et négatifs)

´ Il y’a les réels

´ Il y’a les chaînes de caractères, par exemple «cours» ou «algorithmique»

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 15

15

Opérateur, opérande et expression...

´ Un opérateur est un symbole d’opération qui permet d’agir sur des variables ou de
faire des calculs

´ Un opérande est une entité (variable, constante ou expression…) utilisé par un


opérateur

´ Une expression est une combinaison d’opérateur(s), et d’opérandes, elle est


évaluée durant l’exécution de l’algorithme et possède une valeur et un type

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 16

16

8
10/10/2021

Opérateur, opérande et expression...

´ Par exemple dans a + b :

´ a est l’opérande gauche

´ + est l’opérateur

´ b est l’opérande droit

´ a+b est une expression

´ Si par exemple a vaut 2 et b 3, l’expression a+b vaut 5

´ Si par exemple a et b sont des entiers, l’expression a+b est un entier

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 17

17

Opérateur

´ Un opérateur peut être unaire ou binaire

´Unaire s’il n’admet qu’un seul opérande, par exemple l’opérateur non

´Binaire s’il admet deux opérandes par exemple l’opérateur +

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 18

18

9
10/10/2021

Opérateur

´ La signification d’un opérateur peut changer en fonction du type des opérandes

´Par exemple l’opérateur + avec des entiers aura pour sens l’addition, mais avec
de chaîne de caractères aura pour sens concaténation

´2+3 vaut 5

´«bonjour» + « tout le monde» vaut «bonjour tout le monde»

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 19

19

Priorité des opérateurs

´ Tout comme en arithmétique les opérations ont des priorités :

´Par exemple * et / sont prioritaires sur + et –

´Pour les booléens, la priorité des opérateurs est non, et, ouExclusif et ou

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 20

20

10
10/10/2021

Affectation

´ L’affectation a pour rôle d’attribuer une valeur, résultat d’une évaluation, à une
variable. La valeur doit être compatible avec le type de la valeur à gauche de
l’affectation. Le symbole utilisé pour l’affectation est ¬

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 21

21

Lecture et écriture

´ En tant qu’informaticien on raisonne en se mettant « à la place de la machine »,


donc :

´Pour afficher une information on utilise la commande écrire suivie entre


parenthèses de la chaîne de caractères entre guillemets et/ou des variables de
type simple à afficher séparées par des virgules, par exemple :

´Écrire ("La valeur de la variable a est", a)

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 22

22

11
10/10/2021

Lecture et écriture

´ Pour donner la possibilité à l’utilisateur de saisir une information on utilise la


commande lire suivie entre parenthèses de la variable de type simple qui va
recevoir la valeur saisie par l’utilisateur, par exemple :

´lire (b)

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 23

23

Exemples de synthèse

´ Exemple 1 : Calcul de la surface d’un rectangle

´ Analyse :

´Les trois étapes de cet algorithme :

´1. Lecture de données, longueur et largeur

´2. Calcul de la surface, longueur*largeur

´3. Edition du résultat

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 24

24

12
10/10/2021

Exemples de synthèse

Algorithme surface_rectangle;
Variables

longueur, largeur, surface : réel;

Début

Ecrire ("Donner les valeurs de la longueur et la largeur");

Lire (longueur, largeur);

surface ¬ longueur*largeur;

Ecrire ("La surface du rectangle est : ", surface);

Fin

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 25

25

Exemples de synthèse

Algorithme surface_rectangle;
Variables

longueur, largeur : réel;

Début

Ecrire ("Donner les valeurs de la longueur et la largeur");

Lire (longueur, largeur);


Ecrire ("La surface du rectangle est : ", longueur*largeur);

Fin

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 26

26

13
10/10/2021

Exemples de synthèse

Exemple 1 : Calcul de la surface d’un rectangle


DIM longueur, largeur, surface as single

PRINT "Calcul de la surface d’un rectangle"

INPUT "Donner la valeur de la longueur", longueur

INPUT "Donner la valeur de la largeur", largeur

surface = longueur*largeur
PRINT "La surface du rectangle est : ", surface

End

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 27

27

Exemples de synthèse

´ Exemple 2 : euroVersDirham

´ Analyse :

´Les trois étapes de cet algorithme :

´1. Lecture des données : VE, tauxC

´2. Calcul du VD (valeur en dirham)

´3. Edition du résultat

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 28

28

14
10/10/2021

Exemples de synthèse

´ Algorithme :
Algorithme euroVersDirham;

Variables VE, VD, tauxC : réel;

Début

Ecrire ("Donner les valeurs du VE et de tauxC");

Lire (VE, tauxC);

VD ¬ VE*tauxC;

Ecrire ("La valeur de VD est : ",VD);

Fin

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 29

29

Commentaires

´ Afin d’améliorer la lisibilité d’un algorithme, on peut utiliser des commentaires.


Un commentaire est une suite de caractères quelconques encadrée par les
symboles /* et */

´ Exemple : /* ceci est un commentaire */

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 30

30

15
10/10/2021

Commentaires

/* le calcul du prix TTC */


Algorithme prix_ttc; /* entête de l’algorithme */

Variables PH,TVA, PTTC : réel; /* déclaration des variables */

Début /* lecture des variables PH et TVA */

Ecrire ("Donner les valeurs du PH et de la TVA");

Lire (PH, TVA);

PTTC ¬ PH*(1+TVA); /* Calcul du PTTC */

Ecrire ("Le prix TTC est : ",PTTC); /* Edition du résultat */

Fin

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 31

31

Exercice

´ Soient n et m deux entiers, écrire l’algorithme qui permute les valeurs de n et m


(exemple : passer de n=10, m=15 à n=15, m=10)

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 32

32

16
10/10/2021

Exercices
Algorithme permutation;

Variables X,Y : réel ;

Z : réel ; /* variable intermédiaire */

Début

Ecrire ("Donner les valeurs de X et de Y"); /* lecture des variables X et Y */

Lire (X, Y);

Ecrire ("Avant permutation : X =", X, " Y=" ,Y); /* permutation des valeurs des variables X et Y */

Z¬X;

X¬Y;

Y¬Z;

Ecrire ("Après permutation : X =", X, " Y=" ,Y);

Fin

adil.ammar@ um5.ac.ma UM 5-ESTS-GUE-LPGC 33

33

17

Vous aimerez peut-être aussi