COURS BASES DE
L’ALGORITHMIQUE
Introduction
Qu’est-ce qu’un algorithme ?
Un algorithme est une suite logique d’instructions permettant de
résoudre un problème (ou de répondre à un besoin).
Qu’est ce que veut dire « écrire un algorithme »
- Analyser et comprendre le problème : étude des données
fournies et des résultats attendus.
- Résoudre le problème :
C’est trouver les structures de données adaptées ainsi que
l’enchaînement des actions à réaliser pour passer des données aux
résultats.
Comment exécuter un algorithme sur un ordinateur ?
Il faut traduire cet algorithme à l’aide d’un langage de
programmation connu par l’ordinateur.
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 2
Enoncé d’un problème
Analyse, compréhension
Pseudo code
Résolution
Algorithme
Langage de
Codification programmation
(code)
Programme
Interprétation
Exécution par l’ordinateur
Langage machine
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 3
Règles à respecter pour l'écriture
d'un algorithme
Il est défini sans ambiguïté
Il se termine après un nombre fini d'opérations
Il manipule des objets définis de manière très précise.
Définition 2
Un algorithme est une suite d'actions ordonnées en séquence qui portent
sur les objets d'un univers fini.
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 4
Règles de mise en forme d’un
algorithme
Nom de l’algorithme
Début
*commentaires*
Instruction 1
*commentaires*
Instruction 2
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 5
Les objets utilisés dans un algorithme
Les différents objets
Les variables
Une variable est un objet contenant une valeur appelée à être modifiée
au cours de l'algorithme.
Les constantes
Une constante est un objet dont la valeur ne change pas au cours de
l'algorithme.
Définition des objets
Un objet est définis par :
• Un identificateur : suite quelconque de caractères.
• Un type : Booléen, numérique (entier ou réel), caractère ou chaîne
de caractères.
• Une valeur : c'est le contenu de l'objet.
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 6
Règles de mise en forme d’un
algorithme
Nom de l’algorithme
Déclaration des variables et constantes
Début
*commentaires*
Instructions1
Instructions 2
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 7
• Exemple
Algo : Prix_du_pain
Variables
Nom : chaîne de caractères
Nb : Entier
Prx, Mtt, Rem : Réel
Constantes
Txrem=0,1
Début
*commentaires*
Instruction1
Instruction2
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 8
Instructions élémentaires
Affectation
L'opération consiste à affecter une valeur à une variable. Elle est
représentée par une flèche orientée à gauche
Exemple :
1/ A 15
2/ A B+3
3/ A A+5
1/ Le terme de droite (15) est affecté au terme de gauche (variable A)
2/ Le terme de droite (valeur de la variable B + 3) est affecté au terme de gauche (variable A)
3/ Le terme de droite (valeur de A (avant instruction) + 1) est affecté au terme de gauche (variable A)
Dans ce dernier cas la nouvelle valeur de A remplace l'ancienne.
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 9
Instruction d'entrée
Une instruction d'entrée permet de récupérer une valeur sur un périphérique
d'entrée.
Notation :
Saisir nom variable
Exemple précédent :
Saisir Nom
(saisir sur le clavier des caractères qui représenteront la valeur de la variable nom)
Instruction de sortie
Permet d'afficher à l'écran du "texte", le contenu d'un objet (variable ou
constante) voir le résultat d'une expression.
Notation :
Afficher nom variable ou Afficher « texte »
Exemple :
Afficher « Saisir un nom », Nom
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 10
Expressions
Des opérations sur les objets - variables, constantes ou encore littéraux
(valeurs numériques ou alphanumériques) - peuvent être réalisées à l'aide
d'opérateurs arithmétiques ou logiques pour former des expressions.
Les principaux opérateurs arithmétiques (à partir des
variables déclarées ci-dessus)
Opérations Opérateurs Exemple
Addition + Prx + Nb
Soustraction - Mtt - Rem
Multiplication * Mtt * 1,206
Division / Map / Nb
Puissance ^ (1+ i)^2
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 11
• Exemple
Algo : prix_du_pain
Variables
Nb : Entier
Prx, Mtt : Réel
Début
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt Prx * Nb
Afficher "Montant :", Mtt
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 12
Les structures alternatives et
conditionnelles
La structure alternative
Notation :
SI condition
Alors action1
Sinon action2
FIN SI
Remarque : L'expression de la condition est souvent de forme logique dont
voici les opérateurs : < > = >= <= <> ET OU NON
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 13
Les opérateurs logiques
Comparaison Opérateurs
= Égal à
< Inférieur à
> Supérieur à
<= Inférieur ou égal à
>= Supérieur ou égal à
<> Différent de
ET Et (l’un et l’autre)
OU Ou (l’un ou l’autre)
NON Non
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 14
Exemple :
Algo : prix_du_pain
Variables
Nom : chaîne de caractères
Nb : Entier
Prx, Mtt, Rem : Réel
Constantes
Tx1 = 0,1
Tx2 = 0,05
Début
*calcul d'une remise client*
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt ← Prx * Nb
Si Mtt > 2000
Alors Rem ← Mtt * Tx1
Sinon Rem ← Mtt * Tx2
Fin si
Afficher "Montant :", Mtt
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 15
La structure conditionnelle
Notation :
SI condition
Alors action
FIN SI
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 16
Exemple :
Algo : prix_du_pain
Variables
Nom : chaîne de caractères
Nb : Entier
Prx, Mtt, Rem : Réel
Constantes
Tx1 = 0,1
Début
*calcul d'une remise client*
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt ← Prx * Nb
Si Mtt > 1000
Alors Rem ← Mtt * Tx1
Fin si
Afficher "Montant de la remise :", Rem
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 17
La structure de choix
Notation
Selon expression Faire
Valeur 1 : action1
Valeur 2 : action2
…
Valeur n : action n
Sinon : action par défaut
Fin selon
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 18
Les structures itératives
La structure Tant que… Fin Tant que
Permet la répétition d'une (ou plusieurs) action(s) tant qu'une condition
est satisfaite.
Notation :
Teste si la condition est
Tant que condition Faire
vérifiée . Si c'est le cas il y a
exécution des actions.
Dans le cas contraire
l'algorithme se poursuit après
action 1
la boucle (structure).
action 2
Fin Tant Que
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 19
Exemple :
Algo : prix_du_pain
Variables
--------------------
Rep : chaîne de caractères
Constantes
-------------------
Début
Afficher "voulez-vous calculer une facture ?(oui/non)"
Saisir Rep
Tant que Rep= "oui" Faire
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt ← Prx * Nb
Si Mtt > 2000
Alors Rem ← Mtt * Tx1
Sinon Rem ← Mtt * Tx2
Fin si
Mtt ← Mtt – Rem
Afficher « Voulez-vous une autre facture ? (oui/non) "
Saisir Rep
Fin Tant que
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 20
• La structure Répéter Jusqu’à
Permet la répétition d'une (ou plusieurs) action(s) jusqu’à la satisfaction
d’une condition.
Notation : Teste si la condition est
vérifiée . Si ce n’est pas le
cas il y a exécution des
Répéter
actions.
action 1 Quand la condition est
action 2 vérifiée l'algorithme se
poursuit après la boucle
Jusqu’à Condition (structure).
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 21
Exemple :
Algo : prix_du_pain
Variables
--------------------
Rep : chaîne de caractères
Constantes
-------------------
Début
(* remarque : une facture sera obligatoirement éditée *)
Répéter
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt ← Prx * Nb
Si Mtt > 2000
Alors Rem ← Mtt * Tx1
Sinon Rem ← Mtt * Tx2
Fin si
Mtt ← Mtt – Rem
Afficher « Voulez-vous une autre facture ? (oui/non) "
Saisir Rep
Jusqu’à Rep = « non »
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 22
La structure répétitive
• La structure Pour … allant de … à … faire Fin Pour
Permet de répéter un nombre déterminé de fois une (ou plusieurs) action(s).
Notation :
Pour compteur allant de 1 à n Faire Permet de compter le nombre
de répétition de l’action.
Lorsque le nombre voulu de
action 1 répétition est atteint,
action 2 l'algorithme se poursuit après
la boucle (structure).
Finpour
Exemple :
Algo : prix_du_pain
Variables
--------------------
Compteur : entier
Nbfact : entier
Constantes
-------------------
Début
Afficher « Combien de factures voulez-vous ? »
Saisir Nbfact
Pour Compteur allant de 1 à Nbfact faire
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt ← Prx * Nb
Si Mtt > 2000
Alors Rem ← Mtt * Tx1
Sinon Rem ← Mtt * Tx2
Fin si
Mtt ← Mtt – Rem
Finpour
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 24
Les variables cumulatives
Ce sont des variables qui permettent de cumuler des valeurs calculées dans la boucle ou encore pour
dénombrer le nombre de passage.
Exemple :
……………..
Début
Afficher "voulez-vous calculer une facture ?(oui/non)"
Saisir Rep
Nb←0
Mtttot←0
Tant que Rep= "oui" Faire
Afficher " Prix ?"
Saisir Prx
Afficher "Nombre ?"
Saisir Nb
Mtt ← Prx * Nb
Nb ← Nb+1
Mtttot ← Mtttot + Mtt
Afficher "Autre facture ? (oui/non) "
Saisir Rep
Fin Tant que
Afficher « montant total des »,Nb, « factures : » ,Mtttot
Fin
INPTIC - Cours ALGORITHMIQUE - Par NGOMA MOULENGUET These 25