1
Algorithmique et
Programmation
IMANE HADDAR
2024/2025
2
Objectifs du Module
1. Maitriser les concepts d’algorithmique ;
2. Utiliser un langage de programmation pour mettre en évidence les concepts de la
programmation procédurale.
3
Partie 1: Algorithmique
1. Introduction à l'algorithmique : Histoire, Définitions, Critères d’un bon algorithme.
2. Les Variables
3. Lecture et Ecriture
4. Les instructions de contrôle
5. Les Tableaux
6. Tableaux Multidimensionnels
4
Algorithmique: Historique
A l’époque des Abbaside, Bagdad
était la capital de ces derniers.
Le khalife Mamoun Arrachid a fondé
l’académie de savoir.
L’académie était un centre majeur
de recherche et de débat dans la
civilisation musulmane
Parmi les savants de l’académie, un
jeune mathématicien :
Al-Khwārizmī,
5
Algorithmique: Historique
Muhammad Ibn Musa al- Khwarizmi
Sa tâche était d'enseigner les mathématiques
Permettre au peuple de Baghdad de résoudre des problèmes mathématiques
compliqués
Parmi les problèmes résolus, il y a le problème de la division des terres, le
problème de la gestion des stocks après une récolte, le problème du partage
de l'héritage et d'autre
Toutes les solutions proposées par Alkhawarizmi sont rassemblées dans son livre :
Kitab al-Jabr wa-l-Muqabala
6
Algorithmique: Définition
Définition 1
Un algorithme est une suite d'actions ou d'instruction élémentaire qui doivent être exécutées
bien sûr dans un ordre bien déterminés pour résoudre un problème ou réaliser un travail.
Définition 2
Un algorithme est une séquence finie et ordonnée d'instructions ou d'étapes à suivre pour
résoudre un problème ou accomplir une tâche spécifique.
Les algorithmes sont fondamentaux en informatique, mathématiques et dans de nombreux
autres domaines,
Ils fournissent des méthodes systématiques pour effectuer des calculs, traiter des données ou
prendre des décisions.
7
Algorithmique: Définition
La résolution d’un tel problème comporte les différentes étapes suivantes:
8
Plan du cours:
9
Algorithme: Instructions de base
Problème: en fin de semaine, le serveur ne sait pas combien il gagne exactement !
10
Algorithme: Instructions de base
Apres une simple analyse, on remarque que le salaire
est constant, mais le pourboire change !
Donc pour faire le calcule , on doit utiliser deux types
de données
11
Algorithme: Instructions de base
12
Algorithme: Instructions de base
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
13
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
14
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
15
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
16
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
17
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
18
Relevé de notes
Ecole EMG
Nome étudiant Asmaa Ali
N° 102 Sexe : F
Matière Note Valide Nbr étudiants 46
Informatique 18.5 oui
Mécanique 16 oui
Statistique 8 Non
Anglais 17.25 oui
Moyenne 14.94
Mention Bien
19
20
Notion de données
21
Types des données
22
Exercice : Type de données
23
Solution : Type de données
24
Déclaration des variables
et des constantes
25
26
27
Syntaxe de déclaration d’une constante
28
Syntaxe de déclaration d’une variable
29
Déclaration d’une donnée
30
Déclaration d’une constante
31
Déclaration d’une variable
32
Affectation d’une variable
33
Affectation d’une variable
34
Affectation d’une variable
35
Affectation d’une variable
36
Affectation d’une variable
37
Exercice: Déclaration et affectation
38
Solution : Déclaration et affectation
39
Exercice: Déclaration et affectation
40
Solution : Déclaration et affectation
☺ ☺
☺
☺
41
Exercice : Affectation
42
Solution : Affectation
43
Lecture et écriture
44
Lecture et écriture
Supposons qu’une personne ne sait pas calculer la somme de A+B
Donc pour l’aider nous allons lui proposer un algorithme qui trouve la
solution de la somme de deux nombres
45
Lecture et écriture
Le programme a suivi une suite d’instructions algorithmiques pour résoudre le problème de la somme de
deux nombres
46
Lecture et écriture
47
Ecrire : Opération de sortie
48
Ecrire : Opération de sortie
49
Ecrire : Opération de sortie
50
Lire (Opération d’entrée)
51
Lire (Opération d’entrée)
52
Lire (Opération d’entrée)
53
Exercice : Ecrire
54
Solution : Ecrire
55
Exercice : Ecrire et Lire
56
Solution : Ecrire et Lire
57
Structure d’un Algorithme
58
Exercice : Chiffre d'affaires
59
60
61
62
Expressions Arithmétiques
63
Expressions Arithmétiques
Utilisation des opérateurs arithmétiques
pour faire un calcul quelconque
64
Expressions Arithmétiques
65
Expressions Arithmétiques
66
Expressions Arithmétiques
67
Expressions Arithmétiques
68
Exercice : Expressions Arithmétiques
69
Exercice : Expressions Arithmétiques
70
Expressions de
comparaison
71
Expressions de comparaison
72
Expressions de comparaison
73
Expressions de comparaison
74
Expressions logiques
75
Expressions logiques
76
Expressions logiques
77
Expressions logiques
78
Expressions logiques
79
Exercice: Expressions logiques
80
Exercice
Écrire un algorithme qui calcule la somme des entiers de 1 à N, où N est un
entier donné par l'utilisateur.
Il devra parcourir les entiers de 1 à N et accumuler leur somme dans une
variable
81
Les commentaires
82
Les commentaires
83
Les commentaires
84
Les commentaires
Pour accentuer la lisibilité de l’algorithme et faciliter sa compréhension par les
humains, on peut introduire des commentaires qui ne sont pas des instructions
destinées à la machine mais des indications données au lecteur de l’algorithme.
Les commentaires en algorithme sont encadrés par le symbole %.
85
Les commentaires
86
Structure conditionnelle
simple : Si ... Alors ... Fin Si
87
Structure conditionnelle
Quel algorithme permet de calculer la
division?
88
Structure conditionnelle
Algorithme qui permet de calculer la division :
89
Structure conditionnelle
Si le diviseur est =0
90
Structure conditionnelle
Pour éviter ce problème on doit
appliquer des conditions sur le
diviseur qui est B
91
Structure Séquentielle
Exemple: algorithme qui permet de calculer la somme de deux nombres
92
Structure Conditionnelle
93
Structure Conditionnelle : Simple
94
Structure Conditionnelle
95
Structure Conditionnelle
96
Exercice : Structure Si … Fin Si
97
Structure Conditionnelle : Alternative
98
Structure Conditionnelle
99
Exercice: Structure Si… Sinon…. Fin Si
100
Structure Conditionnelle
101
Structure Conditionnelle
102
Exercice : Structure Si imbriqué
103
Structure à choix multiples : Cas
104
Structure à choix multiples : Cas
Supposons qu’un marchand de légumes
désire faire une application pour vendre
des paniers su internet !
Il doit préciser le type d’aliment et le prix
par Kg
105
Structure à choix multiples : Cas
Supposons qu’un client veut acheter un
légume, il doit saisir le nom de ce dernier et
avoir le prix au Kg du légume saisi
Si le légume n’existe pas , il doit avoir un
message qui indique que ce légume n’existe
pas
Donc comment concevoir cet algorithme
106
Structure à choix multiples : Cas
107
Structure à choix multiples
108
Structure à choix multiples : Cas
109
Exercice : Structure à choix multiple