Académique Documents
Professionnel Documents
Culture Documents
Algorithmique
Chapitre 1: Concepts de base
1
Origine du mot algorithme
2
Définitions
problème donnée.
3
Règles de construction
4
Analyse descendante des problèmes algorithmiques
Sous problème 1
Sous problème 12
Sous problème 2
Problème
de base Sous problème 1N
Sous problème N
5
Algorithme et programme
Analyse et Validation
Spécification Codage
décomposition
6
Caractéristiques d' un algorithme
Caractéristiques d' un algorithme
L’algorithme est un moyen pour le programmeur de présenter son
approche du problème à d'autres personnes. Un algorithme doit être :
ƒ De haut niveau: l'algorithme doit pouvoir être traduit en n'importe
quel langage de programmation.
ƒ Lisible: il doit être compréhensible.
ƒ Précis: chaque élément de l'algorithme ne doit pas porter à
confusion.
ƒ Concis: un algorithme ne doit pas dépasser plusieurs pages sinon
décomposer le problème en plusieurs sous-problèmes
ƒ Structuré: un algorithme doit être composé de différentes parties
facilement identifiables
Maîtrise de l'algorithmique
8
Concept de variable
9
ƒ Une variable est un élément (correspond à un espace mémoire)
l’algorithme.
10
Déclaration des variables
Syntaxe
11
Un identificateur est un nom symbolique qui indique la
fonction de la variable dans l’algorithme
Lettre Lettre
Chiffre
(_)
12
Type des variables
Un type (de variable) détermine l’ensemble de valeurs possibles de la
variable déclarées pour désigner la nature du contenu de la variable et les
opérations pouvant être effectuées sur celle-ci.
Syntaxe
Variable ← valeur
14
Les constantes
15
Les instructions d’entrée et de sortie
16
Structure d’un algorithme
Algorithme nom_algorithme
Déclaration des variables
Debut
Lecture des données
Traitement des données
Affichage des résultats
Fin
17
Les opérations arithmétiques
19
Priorité des opérateurs
opérateurs logiques.
ƒ Les opérateurs relationnels ont la même priorité (ils sont évalués dans
leur ordre d'apparition, de gauche à droite)
20
Exercice n° 1
ƒ A←3
B ← 10
C←A+B
B←A+B
A←C
21
Quel est, après exécution de la séquence d’instructions
suivante la valeur de A
A ←A+B
B←A–B
A←A–B
22
Ecrire un algorithme qui permet de permuter les valeurs de
23
Exercice n°4
de x dans z.
24
Exercice n°5
25
Représentation graphique des algorithmes
suivants :
Opération de lecture
….. ..… Opération de
ou d’écriture
test
26
Les structures algorithmiques
répétitivement.
27
L’instruction de test
Ils permettent de choisir les instructions à exécuter selon l’état (valeur)
d’une condition ( expression logique ).
Syntaxe 1
Si (condition ) Alors
InstructionV1 condition
… InstructionVn
InstructionV1 InstructionF1
Sinon
InstructionF1
… InstructionVn InstructionFn
InstructionFn
Finsi
La séquence vrai (InstructionV1 …InstructionVn) sera exécutée si la
condition est vérifier, dans le cas contraire se sera la séquence faux
(InstructionF1 …InstructionFn) qui sera executée
28
Syntaxe 2
Si (condition ) Alors condition
InstructionV1 InstructionV1
…
InstructionVn Instruction Vn
Finsi
29
ƒ Une condition peut parfois être composée de deux ou de
30
Exercice n° 6
31
On se propose de calculer le nombre de chiffres pairs d’un nombre
32
La structure de choix
plusieurs.
«SI » lorsque les valeurs que peut prendre une variable sont
discrètes (constantes).
d'alternatives imbriquées.
33
Syntaxe 1
Selon (variable ou expression) Faire
< valeur 1> : action 1
…
< valeur N> : action N
Sinon : action par défaut
Fin Selon
ƒ La variable (ou expression) est comparée aux différentes
constantes(valeur 1 à valeur N).
ƒ Les actions exécutées dépendent de ces valeurs (les valeurs peuvent être
énumérée en les séparant par des virgules).
ƒ L'action par défaut est exécutée lorsque la variable n'est égale à aucune
des constantes énumérées.
34
Exemple
Algorithme testchoix
Variable couleur : Chaîne de caractères
Début
Écrire (" saisir couleur de feu ")
Lire (couleur)
Suivant (couleur) Faire "Vert" :
Écrire ("je passe") "Orange" :
Écrire ("je ralentis") "Rouge" :
Écrire ("je m'arrête")
Sinon : Écrire ("ceci n'est pas une couleur de feu")
Fin suivant
Fin
35
Les structures de répétition
d’instructions.
ƒ Deux formes existent selon que le nombre de répétitions est
36
L’instruction Pour … Faire …
II est utilisé lorsque le nombre de répétitions soit connu à l'avance, et
que l'on ait besoin d'utiliser le numéro de l'itération afin d'effectuer des
calculs ou des tests.
Syntaxe
pour compteur ← valeur_initiale à valeur_finale Faire
Instruction1
…
Instructionn
Finpour
La compteur va prendre successivement toutes les valeurs entières
comprise entre « valeur_initiale » et « valeur_finale ».
Pour chaque valeur prise par la variable, la liste des
instructions est exécutée.
ƒ L'incrémentation par 1 de la variable est implicite.
37
Les étapes d’exécution d’une boucle « pour » sont les suivantes :
1. Affectation de la valeur_initiale à la variable compteur
2. Test de la valeur du compteur (compteur ≤ valeur_finale)
3. Exécution des instructions de la boucle « pour »
4. Incrémentation de la valeur du compteur
5. Reprendre l’exécution depuis d’étape 2
Compteur=valeur_initiale
Compteur=Compteur +1
Instruction1
Instructionn
Compteur≤valeur_finale
38
Exemple
40
Syntaxe
Tantque (condition ) Faire
Instruction1
Instruction1
…
InstructionN Instructionn
condition
Fintantque
ƒ La séquence des instructions de la boucle « tantque » seront
exécuter tant que la condition est vérifiée (valeur vrai)
ƒ Le test est effectué à l’entrée de la boucle ; les instructions de la
boucle « tantque » peuvent ne jamais être exécuter si la condition
était fausse au départ.
ƒ Dans la séquence d’instruction de la boucle « tantque » au moins
une instruction doit faire évoluer la valeur de la condition.
41
Exercice 8
I←1
Ecrire (" Debut " )
Tant que I ≤ 10 Faire
J←1
Tant que (J ≤10) Faire
Ecrire( i * j)
J← J+1
FinTantque
I← I+1
FinTantque
Ecrire (" Fin ")
43
L’instruction Repeter …Jusqu’à
Syntaxe
Repeter
Instruction1
Instruction1
… Instructionn
InstructionN condition
Jusqu'à (condition )
ƒ Les instructions de la boucle sont exécutées au moins une fois
avant d’effectuer le test de la condition;
ƒ L’exécution des instructions de la boucle va se répéter jusqu’à ce
que la condition soit vérifiée.
44
Exercice 10
45
Écrire un algorithme qui calcul la somme des nombres entrés par
46
Écrire un algorithme qui échange les valeurs de deux nombres.
continuer.
47