You are on page 1of 60

Le : 05/04/2016

Module 4 : Algorithmique et Programmation

Chapitre 1 : Algorithmique
Activités préparatoires:
 Vous disposez d’une calculatrice simple. Vous voulez
réaliser le calcul suivant: 25+23-47

 Citez les étapes qui permettra d’afficher le résultat


 Les algorithmes sont présents dans notre vie, nous
les exécutons ou nous les faisons exécuter tous les
jours.

 Guidé quelqu’un à retrouver un quartier ou un


lycée, ou même à effectuer une manipulation sur
ordinateur : « c’est fait exécuter des algorithmes »
I. Notion d’algorithme

Introduction
Le mot algorithme est dérivé d’un nom de mathématicien
arabe Al-Khawarizmi, et pour résoudre un problème
donné par l’informatique, l’utilisateur de l’ordinateur
doit mettre en point un algorithme et le faire exécuter par
l’ordinateur.

4
1. Définitions

 Algorithme : Un algorithme est un ensemble


d’actions (ou d'instructions) destinées à résoudre un
problème en un nombre fini d’opérations.

 Algorithmique : est l’ensemble des activités qui


relèvent des algorithmes.

5
 Caractéristiques d’un algorithme
 La finitude : Le nombre d’instructions de
l’algorithme doit être fini.
 La précision : Toute étape doit être définie.

 L’exécutabilité : l’algorithme doit être exécutable


en un temps fini, et possède au moins un résultat.

6
2. Schéma de résolution d’un problème

Problème
Analyse 2 Conception
1

Entrées
Traitement
Algorithme
Sorties
3
Traduction
4 Programme
Résultats Exécution

Données
7
 Supposons qu’on veut faire par une machine l’addition
de deux nombres A et B, le résultat de cette addition
sera appelé S.

 Les données à fournir à la machine sont A et B; le


résultat du traitement est S. S étant la somme de A et B,
nous avons S = A + B, dans se cas l’algorithme est:

 Entrer la valeur de A
entrée  Entrer la valeur de B

traitement  Calculer S=A+B

sortie  Afficher S
 Exemple :
 Résoudre le problème suivant :
Connaissant les notes obtenues d’un élève
dans 3 matières et leurs coefficients,
calculez la moyenne de l’élève.

9
 Exercices d’application

 Exercice 1 :
Connaissant le prix d’achat d’un produit,
les frais de transport et son prix de vente,
calculez le bénéfice réalisé.

10
Partie II :
II. Notions de données
Le : 05/04/2016

2.1 Les constantes

 Une constante est une donnée qui possède un


nom et une valeur inchangeable durant le déroulement
de l’algorithme.
Pi

3,14
Syntaxe :
Constante nom_de_constante = valeur ; 12
2.2 Les variables

 Une variable est une donnée qui possède un


Nom, un type et une valeur changeable durant le
déroulement de l’algorithme.
Larg

102,13
53,6
110
10
11
Syntaxe :
Variable nom_variable : type_de_variable13;
 Types de variables

 Type numérique : le cas où la variable reçoit un nombre.


Exemples :
1- Type entier : une variable accepte des valeurs qui
appartiennent à l’ensemble Z

2- Type réel: une variable accepte des valeurs qui


appartiennent à l’ensemble R

14
 Type alphanumérique :
- Type caractère : une variable accepte des
valeurs comme : ‘a’,’1’,’ ?’,’+’

- Type chaîne de caractères : une variable


accepte des valeurs comme :
‘nom’,’123’,’note1’

15
 Type logique (booléen)
Une variable prend uniquement deux valeurs
vrai ou faux
Exemples : variable a : Entier;
char : caractère;
log : booléen ;
c : chaine de caractères;
b : Réel ; 16
2.3 Fonctions définies sur les types de variables
Fonction Type Description
Div Entier n1 div n2 retourne le quotient de la
division euclidienne entière de n1 par
n2. Par exemple 11 div 2 vaut 5
Mod Entier n1 mod n2 retourne le reste de la
division.
Par exemple 11 mod 2 vaut 1
Abs(x) Entier ou Réel Retourne la valeur absolue du nombre x.
Par exemple Abs(-3) vaut 3.

Racine (x) Entier ou Réel Retourne la racine carrée du nombre


Positif x.
Par exemple racine(9) vaut 3
Longueur (‘chaine’) Chaine de Retourne la longueur d’une chaine de
caractères caractère donnée. Par exemple
Longueur (‘’Informatique’’) vaut 1217
2.4 Formalisme d’un algorithme(1)

Algorithme nom_algorithme ; // En-tête d’algorithme


Variable nom_variable : type_variable ;
Constante nom_contante = valeur ; // partie déclarative
Début
// Le corps d’algorithme
//(……………………………..)
Fin
18
Exercices d’application
Exercice n°1 :
- Vous voulez calculer la division de deux nombres a et b
donnez le type de chaque variable, sachant que :
div = a /b;

Exercice n°2 :
- Vous êtes besoin d’utiliser dans un calcul la gravité, comment
allez-vous déclarer cette donnée ? Donner la syntaxe
convenable.

Exercice n°3
Donner la valeur et le type de chaque variable A, B, C
A= (111 div 2) + ( 111 mod 2) ;
B = racine (25) + abs(-35,65) ;
C = longueur(‘Bonjour’) + longueur (‘Tout le monde’) ; 19
Partie 3
 Mise en situation:
 Résoudre le problème suivant :
Connaissant les notes obtenues d’un élève
dans 3 matières et leurs coefficients,
calculez la moyenne de l’élève.

21
III. Instructions de base

3. 1 Affectation

 C’est l’action qui permet d’attribuer à une variable,


une expression (valeur, variable, constante,
expression, fonction).
Le symbole de l’affectation est 

Syntaxe :
Nom_variable  Expression ;
22
a) Affectation d’une valeur a une variable

Algorithme affectation1 ;
Variable A : Entier ;
Début
A  20 ; // Commentaire A = 20
Fin
A

20
23
b) Affectation d’une variable a une variable

Algorithme affectation 2 ;
Variable A,B : chaîne de caractères ;
Début
B  ‘bonjour‘ ;
A B;
Fin
A B

bonjour

24
c. Affectation d’une expression a une variable

Algorithme affectation 3 ;
Variable A : Réel ;
Début
A  (12+2)/ 3 ; (12+2)/ 3

Fin
A

4,67
25
c. Affectation d’une fonction a une variable

Algorithme affectation 4 ;
Variable A : Réel ;
Début
A  racine(25); racine(25)
Fin
A

5
26
Remarques :

Pour utiliser l’affectation, on doit respecter les


propriétés suivantes :

 Les membre gauche de l’affectation doit être toujours


une variable.

A  13 13  A

27
Remarques :

 Les deux membres de l’affectation doivent être de


même type.

Variable A , B :Entier ;
c : chaîne de caractères ;
Début
AB; Ac
A c ;
Fin
28
Remarques :

 Le contenu du membre gauche de l’affectation sera


écrasé et remplacé par le contenu du membre droit.
Algorithme affectation ;
Variable A , B :Entier ;
Début
A  12 ;
B  1000 ; A B
A  B;
Fin
12 1000

29
Exemple
Algorithme Affectation; //Nom de l’algorithme
Début
A  20 ; // la variable A reçoit une valeur ;(A=20)
B  30 ; // La variable B reçoit une valeur ; (B=30)
A  B ; // La variable A reçoit le contenu de la variable B ; (A=30)
B  A+ 35 ; // La variable B reçoit une expression ; (B= 65)
A racine (25) ; // La variable A reçoit une fonction ; (A=5)
Fin
Remarques
Pour utiliser l’affectation, on doit respecter les propriétés
suivantes :
 Le membre gauche de l’affectation doit être toujours une
variable. (Ex : A20).

 Les deux membres de l’affectation doivent être de même


type. (AB // A et B sont deux variables de type caractère).

 Le contenu du membre gauche de l’affectation sera écrasé


et remplacé par le contenu du membre droit.
3.1.1. Expressions
 Opérateurs, opérandes, expression
 Un opérateur est un symbole d’opération. Les
opérateurs usuels (+, -, *, /), et les opérateurs de
comparaison (>,<,=,<>, >=, <=, ET, OU, NON).

 Une opérande est une entité (variable, constante


expression, ou fonction) utilisée par un opérateur.

 Une expression est une combinaison d’opérateur(s) et


d’opérande(s), elle est évaluée durant l’exécution de
l’algorithme, et possède une valeur (son interprétation)
et un type. 32
 A. Expressions arithmétiques

(abs(3) + racine (25)) * 5

Opérande 1 Opérateur Opérande 3


(fonction) d’addition (valeur numérique)

Opérande 2 Opérateur de
(fonction) multiplication

33
 B. Expressions logiques
Une expression logique simple est une comparaison
entre deux expressions arithmétiques.
Opérateur Description Opérateur Description
= Égal <> Différent
< Inférieur > Supérieur
<= Inférieur ou égal >= Supérieur ou égal

34
A B NON B NON A A ET B A OU B
V V F F V V
V F V F F V
F V F V F V
F F V V F F

Exemple : A<B ET (B div A = 0)

Opérateur logique

Expression logique simple 1 Expression logique simple 235


3.1.2. Table de priorité des opérateurs

Ordre Opérateurs Ordre Opérateurs


1 OU 5 *, /
2 ET 6 +,-
3 NON 7 Les opérateurs
unaires + et -
4 <,<=,>,>=,<> et =

36
 Exercices d’application

 Exercice 1 :
Connaissant le prix d’achat d’un produit,
les frais de transport et son prix de vente,
calculez le bénéfice réalisé.

37
Série des exercices n° 1

38
Partie 4
Situation problème :
 Le contenu d’une mémoire est
accessible en lecture et en
écriture, comment peut-on
stocké ou restituer les données
stockées dans une case
mémoire ?
Afficher 0,
64
41
23
Entrer une valeur

Afficher la valeur entrée

Choisir un opérateur

Entrer une autre valeur

Afficher la 2ème valeur


Choisir l’opérateur égal
Afficher le résultat
III. Instructions de base
Le : 05/04/2016

3. 2 Instruction d’écriture
 C’est l’action qui permet à l’algorithme d’afficher
pour son utilisateur des messages ou des résultats
de calculs.

Syntaxe : Afficher (val1,val2,…….valn);


Où Ecrire (val1,val2,…….valn);
Exemples :
Ecrire ("Entrer la longueur du rectangle");
Ecrire ("La surface du rectangle est" , S);
Ecrire ("La surface du disque est ", Pi*r*r);
42
Remarques

Ecrire (Entrer la longueur du rectangle);

Ecrire ("La surface du rectangle est" S);

Ecrire ("La surface du disque est , Pi*r*r);


43
3. 2 Instruction de lecture
 C’est l’action qui permet à l’utilisateur de fournir à
l’algorithme les valeurs des variables.

Syntaxe :
Lire (v1,v2,…….vn);

Exemples :
Lire (Long);
Lire (larg);
Lire (Long, larg);
44
Remarques

Lire (Entrer la longueur du rectangle);

Lire (‘Long, Larg’);

45
4. Formalisme d’un algorithme

Algorithme nom_d’algorithme ; //En-tête d’algorithme


variable identifiant: typedevariable ;
constante identifiant = valeur ; //partie déclarative
Début
bloc d’actions ;
//bloc d’instructions.(lecture, écriture et affectation)
Fin 46
//Bloc d’instructions
Un bloc d’instruction est une partie de
traitement d’un algorithme, constituée
d’opérations élémentaires situées entre
Début et Fin.

47
5. Organigramme
L’organigramme est une représentation graphique
d’un algorithme

Contenu Organigramme

Début, Fin

Ecrire(), Lire()

Traitement : Affectation

48
Exercice
1. x, y, z trois variables réels, écrire les
instructions qui permettent de lire, d’échanger
et d’écrire les valeurs de x et y.

49
Exercice
1. Ecrire un algorithme qui demande à l’utilisateur
d’entrer deux nombres réels, puis calcule et affiche
La division de ces deux nombres.

2. Transformer cet algorithme en organigramme.

50
Exercice d’application
1. Ecrire un algorithme opérations permet de
Calculer l’addition, la soustraction
de deux nombres.

2. Transformer cet algorithme en organigramme.

51
Partie 5
IV. Instructions du contrôle
Le : 05/04/2016

Le langage algorithmique propose des


structures de contrôle conditionnelles
standard qui sont : l’alternative
simple, complète, imbriquée et le choix
multiple.
53
4.1 Alternative simple (choix unaire)

Syntaxe :
Si condition Alors
bloc instructions
FinSi

Si condition est vérifiée alors le


bloc d’instructions sera exécuté,
sinon il sera ignoré. 54
Exercice d’application
 Ecrire un algorithme permet de calculer et afficher la
somme de deux nombre s’il est supérieur à 10.

55
4.2 Alternative complète(choix binaire)
Syntaxe :
Si condition Alors
bloc instructions1
Sinon
bloc d’instructions2
FinSi

56
 Si condition est vérifiée alors le bloc instructions1
sera exécuté et le bloc instructions2 sera ignoré,
sinon le bloc instruction1 sera ignoré et le bloc
instructions2 sera exécuté.

 Exercice d’application
Ecrire un algorithme qui demande à l’utilisateur, puis
affiche positif si le nombre est positif, et négatif dans le
cas contraire.

57
4.3 Alternative imbriquée
Il est possible d’imbriquer des structures conditionnelles
entre elles (ne pas oublier d’indenter pour une bonne lisibilité
de l’algorithme.

Syntaxe :
Si condition Alors
bloc instructions1
Sinon Si
bloc d’instructions2
Sinon Si
bloc d’instructions 3
Sinon Si
bloc d’instructions 4
Sinon
bloc d’instructions 5
FinSi 58
 Exercice d’application

Vous voulez créer un club sportif, dans ce club vous devez


former trois catégories selon l’âge de chaque participant :

 Poussins : Si l’âge est inférieur à 10.


 Minime : Si l’âge est compris entre 10 et 15.
 Cadet : Si l’âge est supérieure à 15.

Écrire un algorithme permet de déterminer la catégorie de


chaque participant selon son âge.

59
4.3 Alternative Choix multiple
Lorsque l’imbrication des alternatives devient
importante, la structure de l’algorithme devient complexe.
Pour palier à ce problème, le langage algorithmique propose
une nouvelle structure de contrôle, appelée instruction de
choix multiple.

Syntaxe :
Cas Expression Vaut
val1 : Instructions1;
val2: Instructions2;
…………………..
valn : Instructions n;
Autre : Instructions;
Fin Cas 60

You might also like