Algorithmique 2020 Séance1
Algorithmique 2020 Séance1
Algorithmique 2020 Séance1
M.MIYARA
Année Universitaire: 2019-2020
1
Avant Propos
2
Rappel sur le fonctionnement de l'Ordinateur
Mémoire Processeur
Bus
Unités ...
d'entrée-
Clavier Écran
sortie
Disque
La mémoire contient des instructions et des données 3
Rappel sur le fonctionnement de l'Ordinateur
Données UC Résultats
Instructions
Mémoire
Périphériques d’entrée
Mémoires auxiliaires
Disque dur
Joystick Scanner Micro Souris
2*x + 3 = 0 10*x - 1= 0
0*x + 0 = 0 0*x + 3 = 0
?? a*x + b = 0 ??
Je veux informatiser ce problème et le rendre exploitable
à travers mon ordinateur. Qu'est ce que je dois faire ?
5
Informatisation d'un problème
6
Qu'est ce qu'un Algorithme?
8
Représentation d’un Algorithme
9
Algorithme
Définition :
C'est un pseudo-langage qui est conçu pour
résoudre les problèmes et applications sans aucune
contrainte due aux langages de programmation et
aux spécificités de la machine. Ce pseudo-code sera
ensuite traduit et codé dans le langage de
programmation désiré.
L'Algorithmique consiste, après analyse du
problème, à résoudre, à définir la description
automatisée d'un traitement , indépendamment du
langage de programmation à utiliser. 10
Algorithmique
11
Exemple 1
12
Exemple 2
Analyse du problème
Un nombre N est pair si le reste de la division de N par
2 est nul
Solution algorithmique
1. calculer le reste R de la division de N par 2
2. si R est égal à 0 alors N est pair
3. sinon N n'est pas pair
13
Caractéristiques d'un Algorithme
15
Caractéristiques d'un Algorithme
1.1
1
1.2
2.1
2
2.2
Définition :
18
Langage Assembleur
Définition :
Le langage Assembleur est un langage qui
utilise des instructions sous forme symbolique
(ADD, MOVE).
L'assembleur est lié au microprocesseur: c'est
le seul langage que le microprocesseur comprend.
19
Programme source
Définition :
Le programme source est le premier résultat
de la traduction d'un algorithme en un langage
évolué :
20
Compilateur
Définition :
24
Exemple
L'énoncé du problème
La structure de l'algorithme
Saisie des articles : Calcul du total Afficher
- nombre de chaque en fonction le
article de chaque article total
25
Exemple
Déterminer les données élémentaires
Des variables saisies ou calculées.
Une variable a un nom et appartient à un type de données
(texte, entier, réel, date..).
Dans notre cas :
- le nombre de chaque article
- et deux variables pour le traitement : le prix de chaque type
d'article à retenir et le total à calculer.
Des constantes dont la valeur ne change pas durant le
traitement. Dans notre cas :
- les 3 prix unitaires propres à chaque article.
L'utilisation des variables et constantes est une question de choix de la part du
programmeur. Plusieurs solutions et combinaisons sont possibles. 26
Structure générale d'un Algorithme
Début
Manipulation Actions
FIN
27
Déclaration des Objets
28
Objet
Définition :
Un objet est toute partie identifiable de l'information
au cours d'un traitement.
Il est caractérisé par son nom, son type ou sa valeur.
L'ensemble des objets manipulés par un algorithme
est appelé:
environnement de cet algorithme
Remarque :
Les objets manipulés par un ordinateur sont :
Les Constantes et Les Variables 29
Les constantes
Définition :
Syntaxe de la déclaration :
Exemple :
Constante Pi = 3.14
30
Les variables
Définition :
Ce sont des références (adresses mémoires) où vont être
stockées des valeurs variables. Les différentes valeurs d'une
référence appartiennent au type de données auquel
appartient la référence.
Remarques :
1°- Une variable est caractérisée par un nom ou identificateur suite de
caractères qui permet d'identifier la variable d'une manière unique dans un
algorithme.
2°- En programmation, ce nom ne doit pas commencer par un caractère numérique,
contenir de signes de ponctuation, des caractères accentués, des espaces,...
31
Exemples: x, x1, x_1, premiere_variable, varLocal,…
Les variables
Syntaxe de déclaration :
32
Types des variables
Définition :
C'est l'ensemble des nombres entiers positifs ou négatifs.
Syntaxe de la déclaration :
Variable variable1,variable2,… : Entier
Définition :
C'est l'ensemble des nombres réels, c'est à dire les
nombres décimaux sans limitation.
Syntaxe de la déclaration :
Variable variable1,variable2,… : Réel
Exemple :
Variable x,y : Réel
Remarque :
En programmation, les réels sont représentés par des nombres à virgule flottante
en simple ou double précision.
35
Type Caractère ou Chaîne de caractères
Définition :
C'est un caractère ou une suite de caractères, c'est à
dire des combinaisons de caractères (lettres, chiffres, signes de
ponctuation, symboles, espaces,...).
Syntaxe de la déclaration d'un caractère :
Remarques:
Dans certains langages de programmation, le type caractère
(char) n'est qu'un cas particulier du type entier; chaque
caractère étant représenté par son code ASCII (entre 0 et 127)
Par conséquent un caractère occupe 1 octet en mémoire
Définition :
Il s'agit des objets qui ne peuvent prendre que deux
valeurs VRAI ou FAUX. ( True ou False)
Syntaxe de la déclaration :
Variable variable1,variable2,… : Booléen
Exemple :
Variable Décision : Booléen
Remarque: Dans certains langages (C par ex), il n'existe pas de type
Booléen. Une expression logique est évaluée en type entier: Si elle est
fausse sa valeur est 0 et si elle est vraie, elle prendra toute autre valeur
38
entière positive non nulle.
Types de Variables
Taille en
Type Anglais Plage
mémoire
Byte (octet) Byte 0 à 255 1 Octet
Entier court Short Integer -128 à +127 1 Octets
Entier long Long Integer -2 147 483 648 à 2 147 483 647 4 Octets
Réel simple Real ou float -3,40x1038 à 3,40x1038 6 Octets
Réel double Double -1,79x10308 à 1,79x10308 8 Octets
Caractère char lettres, chiffres, signes de ponctuation,… 1 Octet
Chaîne de
String suite de caractères 256 Octets
caractères
Booléen Boolean Vrai et Faux (True et False) 1 Octet 39
Autres objets à déclarer
40
Autres objets à déclarer
41
Manipulation des Objets
42
Instruction et Action
Définition :
On appelle instruction toute commande élémentaire que
l'on doit appliquer sur des objets pour avoir des sorties bien
définies.
Définition :
Une action est un événement qui change l'état d'un objet
d'un état initial donné à un état final désiré. Une action a une
durée d'exécution finie et un effet propre et bien défini. Chaque
action porte sur des objets sur lesquels elle s'exécute :
L'Action est une seule instruction ou un groupe d'instructions
43
La Structure de la partie manipulation
DEBUT
Instruction 1
Instruction 2
……. Action
…….
Instruction n
FIN 44
Les instructions d'un Algorithme
Les Tests
Les boucles
46
Instructions de dialogue Homme-Machine
Exemple :
Écrire ('' Saisissez la valeur de a '')
Lire(a) 48
Instruction d'affectation
Définition:
C'est le stockage d'une valeur à un endroit
spécifique(variable). Pour affecter une valeur à une variable,
on écrit :
Variable Valeur
équivalente à A ← 2
Certains langages donnent des valeurs par défaut aux variables