Vous êtes sur la page 1sur 45

COURS ALGORITHMIQUE

NIVEAU 1
Présenté par Moustapha DER
Enseignant – chercheur – AUTEUR DU LIVRE : « LE GUIDE DU
GENIE LOGICIEL » Tomes 1 et 2 - chef de projet – CEO
Contacts : 77 656 84 51 Email : moustapha.der@esmt.sn

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Plan du cours
Chapitre 1 : Généralités
1. Structure d’un programme algorithmique
2. Notion d’identificateurs et de types
3. Les instructions d’entrée et sortie
4. Les opérations arithmétiques et logiques
5. Les opérateurs de comparaison
Chapitre 2: Les structures conditionnelles
1. La structure conditionnelle simple
2. La structure alternative
3. La structure à choix multiple
4. Imbrication de structures conditionnelles

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Introduction

• Définition de quelques mots clés :


• Informatique
• Ordinateur
• Composants d’un ordinateur
• Algorithmique
• Langage de programmation
• Instruction
• Action

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
Informatique : est la
science du traitement
Définition automatique de
l’information en
utilisant un ordinateur

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
Définition
• Un ordinateur : est un
dispositif électronique
capable d’effectuer des
traitements rationnels
de l’information, de
sauvegarder les données
et de les restituer en cas
de besoin.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
Composants d’un
ordinateur

• La partie matérielle
• Unité sortie (Exemple : Ecran)
• Unité entrèe (Exemple : clavier)
• Unité Traitement (Exemple :
Unité centrale)
• Les périphériques annexes
• La partie logicielle
• Système d’exploitation
• Logiciel d’application

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Algorithmique
• L'algorithmique est l'étude et la
production de règles et techniques
qui sont impliquées dans la
définition et la conception
d'algorithmes, c'est-à-dire de
processus systématiques de
résolution d'un problème
permettant de décrire précisément
des étapes pour résoudre un
problème algorithmique.
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Algorithmique
• L’algorithmique est ʺl’art et
la science d’écrire un
algorithme pour résoudre
un problème donné, de la
manière la plus efficace
possibleʺ. L’algorithme
représente donc une
solution informatique à un
problème spécifique du
monde réel

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Quel est le but d'un algorithmique ?
• Résultat de recherche d'images
pour "algorithmique"
• Un algorithme est une méthode
générale pour résoudre un type
de problèmes. Il est dit correct
lorsque, pour chaque instance du
problème, il se termine en
produisant la bonne sortie, c'est-
à-dire qu'il résout le problème
posé.
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
Langage de
programmation

Les langages de programmation permettent de décrire d'une part les structures des données
qui seront manipulées par l'appareil informatique, et d'autre part d'indiquer comment sont
effectuées les manipulations, selon quels algorithmes. Ils servent de moyens de
communication par lesquels le programmeur communique avec l'ordinateur, mais aussi avec
d'autres programmeurs ; les programmes étant d'ordinaire écrits, lus, compris et modifiés par
une équipe de programmeurs
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
• En algorithme, un programme
est constitué de trois (3)
parties qui sont :
Structure La partie entête : Elle permet
de donner un nom au
d’un programme
La partie déclarative : Elle
programme permet de déclarer des
constantes, de définir des
types, prototypes, modules et
enfin de déclarer des
variables.
• La partie corps du programme
principal : Elle contient toutes
les directives de base que le
programme doit exécuter
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
Structure Programme identificateur

d’un //DÉCLARATION DE CONSTANTE(S)


//DÉFINITION DE TYPE(S), PROTOTYPE(S)

programme // DÉFINITION DE MODULE(S)


//DÉCLARATION DE VARIABLE(S)
DÉBUT
//CORPS DU PROGRAMME PRINCIPAL
FIN

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
L’algorithmique manipule des variables
typées. A chaque variable lui est associé
un type de donnée. Le type détermine
les valeurs compatibles à la variable,
mais aussi la taille mémoire que le
Notion de types système doit allouer à cette variable.
Cette taille est toujours un multiple de
et l’octet (rappel : 1 octet = 8 bits).
Les types qui existent sont classés en
d’identificateurs deux catégories :
✓ Le type primitif encore appelé type
élémentaire ou de base. Les types
élémentaires sont :
 entier,
 réel,
 caractère,
1. Notion de types  chaine,
 booléen.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
• Remarque : le type entier et le
type réel sont des numériques.
L’entier n’a pas de virgule,
mais le réel en a. Le type
Notion de types caractère admet une valeur,
mais cette valeur doit être
et entre apostrophes (‘’). Le type
chaine doit avoir sa valeur
d’identificateurs entre guillemets
booléen peut avoir deux
(""). Un
valeurs Vrai ou Faux.
✓ Les types composés sont
créés sur la base des types
primitifs. Ces types sont :
 l’énumération,
1. Notion de types  l’intervalle
 l’enregistrement.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
• L’identificateur permet d’identifier de
manière unique une entité dans un
programme. L’identificateur peut symboliser
le nom d’un programme, une variable, une
constante, un module, un type, un prototype,
Notion de types etc.
• En programmation, les identificateurs
et obéissent à des normes qui peuvent différer
en fonction des langages. En algorithmique,
tout identificateur doit respecter les règles
d’identificateurs suivantes :
Règle 1 : Les éléments qui composent
l’identificateur doivent être de type
alphanumérique ou alphabétique
Règle 2 : Le premier élément de
l’identificateur ne doit pas être un chiffre.
Règle 3 : Si l’identificateur est un mot
composé, alors ces composants ne doivent
pas être séparés ni par l’espace, ni par le tiret
2. Notion d’identificateur du 6 (-), mais par contre on peut les
concaténer ou les séparer par le tiret du 8
(_)

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Règle 4 : 5) 4-6
L’identificateur ne
doit pas figurer 6) X
dans la liste des 7) AB
mots réservés et il
est recommandé à 8) Testez-moi
Notion de types ce que son nom
soit en relation 9) Exo4

et avec son contenu.


• Exercice 1.1 : Soit
10)Exécution
11) ∆
d’identificateurs les identificateurs
suivants,
ceux qui
dites
sont
12)X2
13)4+7 = 11
corrects ou
incorrects et le 14)4EXO
pourquoi en vous
basant sur les 15)A-B
règles 1 à 3? 16)X_Y
1) Facto 17) Carré
2) Test 18)H2O
2. Notion d’identificateur 3) Études
universitaires
4) Fac

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICE : Soient les identificateurs suivants,
dites ceux qui sont correct ou non puis justifier ?

1) n!=n*(n-1)! 2) Aide-mémo 3) 4H2O


4)4+6 5) X-A 6) Prénom 7)
Testez_moi 8) Exo4 9) Exécution 10)
∆=B²+A.C 11) X2

12) X+3=10 13) ESMT 14) ÉLÈVE 15) H2O


EXERCICES

QUESTIONS /
REPONSES
Les constantes
Une constante est un identificateur dont la valeur ne change pas
tout au long de l’exécution du programme. Dans un programme,
si on manipule des valeurs qui ne changent pas, il est
recommandé de les considérer comme des constantes avant de
les manipuler.
Déclaration :
Syntaxe 1 :
Const identificateur = valeur
Syntaxe 2 :
Constante identificateur = valeur

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Les constantes
N.B. La valeur d’une constante symbolise une
occurrence d’une entité de type prédéfini.

➔Les valeurs entières sont toujours des numériques, mais sans


virgule.
➔Les valeurs réelles sont des numériques avec virgule.
➔Les valeurs caractères sont toujours délimitées par des
apostrophes.
➔Les valeurs chaines sont délimitées par des guillemets
➔Les valeurs booléennes ne peuvent prendre que deux valeurs vrai
ou faux et chacune de ces valeurs symbolise un état.
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
Les variables
Une variable est un identificateur qui peut changer de
valeur à tout moment pendant l’exécution d’un
programme. La valeur d’une variable doit être
compatible à son type de valeur.
Déclaration
Syntaxe 1 :
Var identificateur(s) : type(s)
Syntaxe 2 :
Variable(s) identificateur(s) : type(s)
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

QUESTIONS /
REPONSES
EXERCICES : Soient les déclarations suivantes, dites lesquelles
sont correctes ou incorrectes et le pourquoi ?

1) const X=2022 2) const école="ESMT" 3)


VAR test=chaine 4) var info : chaine 5)
const 4+4=8 6) var 4 : entier 7) var
4X : reel
Les instructions d’entrée / sortie

Elles permettent de
donner des
directives aux unités
d’entrée et sortie de
l’ordinateur. L’unité
d’entrée de base est
le clavier par contre
l’unité de sortie de
base est l’écran.
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Les instructions d’entrée
Elles permettent d’entrer des
données dans l’ordinateur en
utilisant le clavier qui est le
périphérique d’entrée de base.
Pour ce faire il faut utiliser la
fonction saisir() ou lire ().
Syntaxe :
a) Lire (identificateur(s))
b) Saisir (identificateur(s))
N. B. Dans ce cas les
identificateurs représentent des
variables

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Les instructions de sortie

Elles permettent de
donner des directives
aux unités de sortie
constituée
essentiellement de
l’écran. Pour envoyer des
flux de données vers
l’écran, il faut utiliser la
fonction Afficher() ou la
fonction Ecrire ( ).
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES
Exercice 1 : Ecrire un algorithme qui affiche vos informations qui sont : le nom, prénom,
sexe et âge du responsable de la classe LTI1 .
Exercice 2 : Ecrire un algorithme qui permet à l’utilisateur de saisir le numéro de matricule
de solde d’un employé, son nom, son prénom, son service, sa fonction et son salaire de
base. Le programme affiche les informations saisies
Exercice 3 : Ecrire un algorithme qui permet de saisir 2 valeurs entières. Le programme
calcule et affiche la somme, différence, produit et le reste de la division entière.
Exercice 4 : Ecrire un algorithme qui permet de saisir les informations d’un candidat. Le
programme affiche les informations saisies. Un candidat est caractérisé par son id, son
nom, son prénom, l’examen préparé, l’école d’origine et son adresse.
Exercice 5 : Ecrire un algorithme qui permet de saisir une valeur entière exprimée en
secondes. Le programme convertit la valeur saisie sous la forme heure : minute : seconde

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES (suite)
Exercice 6 : Ecrire un programme qui permet de saisir les données d’un produit puis
détermine et affiche le montant hors taxe et le montant TTC de chaque produit. Un
produit est caractérisé par son code, son libellé, son prix unitaire et sa quantité en
stock.
Exercice 7 : Ecrire un algorithme qui permet d’échanger les valeurs de deux
variables entières saisies
Exercice 8 : Écrire à un algorithme qui à partir de trois notes d’un étudiant et de
trois coefficients calcule la moyenne.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES (suite)
Exercice 9 : Le gouvernement du Sénégal veut avoir des statistiques relatives
à la population des électeurs sénégalais qui participent régulièrement aux
élections. Un électeur est caractérisé par le n° de sa carte d’électeur (entier),
son sexe (M/F), son nom (chaine), son prénom (chaine), son adresse
(chaine), son bureau de vote (entier), sa région d’origine (chaine), son
nombre de participation aux élections (entier) et la région de son bureau de
vote (chaine). C’est dans ce cadre que vous êtes pris comme l’informaticien
qui doit proposer un programme qui permet de saisir les données d’un
électeur, d’afficher les données de l’électeur.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICES (suite et fin)
Exercice 10 : Soit la structure relative aux employés de la société
DJAMIL_TERANGA_BEUGUEU_BAKH dont chaque employé possède les champs suivants : le
numéro de matricule (entier), le nom de l’employé (chaine), le prénom de l’employé (chaine), le
service de l’employé (chaine), l’année d’embauche (entier), son salaire de base (entier), son
nombre d’enfants (entier), sa situation matrimoniale (chaine) et sa fonction (chaine).
Ecrire un programme algorithmique qui permet de saisir les données d’un employé, d’afficher
les informations relatives à l’employé, de déterminer et d’afficher la prime de l’employé. La
prime est déterminée comme suit :
- Prime = (salaire de base x 7% ) x nombre d’enfants
Le programme doit également calculer et afficher le salaire net de l’employé en utilisant la
formule suivante : Salaire net = salaire de base + prime
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Les opérateurs arithmétiques
et logiques

Une opération est l’association d’opérande(s) (valeur) et


d’opérateur (signe). Il existe deux types d’opérations :
✓ Les opérations unaires
Elles sont composées d’un opérande et d’un opérateur
✓ Les opérations binaires
Elles sont composées de deux opérandes et d’un opérateur.
L’ordinateur dispose d'une unité appelée UAL (unité arithmétique
et logique) chargée d’exécuter toutes les opérations
arithmétiques et logiques.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Les opérateurs arithmétiques

Tous les opérateurs arithmétiques


de base qui existent en
mathématique restent valables en
informatique. Ces opérateurs sont
résumés dans le tableau suivant :
Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
Les opérateurs arithmétiques
Variables ou Opérandes opérateurs
Exemples
valeurs Signe Sens Unaire Binaire
+ Addition Oui Oui +A ;+B ;A+B ;B+A
- Soustraction Oui Oui -A ;-B ;A-B ;B-A
* Produit Non Oui A*B ;B*A
div Division entière Non Oui A div B ; B div A
/ Division réelle Non Oui A/B ; B/A
A B
A mod B ;
mod Reste de la division entière Non Oui
B mod A
sqrt Racine carrée Oui Non sqrt(A) ; sqrt(A+B)
sqr carré Oui Non sqr(A) ;sqr(A+B)
abs Valeur absolue Oui Non abs(A) ;abs(A-B)

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com
EXERCICE : soit les expressions suivantes, donnez
pour chacune son type de valeur et son résultat
1) 5-6 * 3 * 4-3/2+19-5/2-17 div 2 +17 mod 4+sqrt(9)-2*4
2) 12.0 - 3 * 2+7 div 8-19/2-8+3*4/6
3) !vrai ou (faux et vrai) et faux ou vrai ou vrai et ! (faux)
4) !(12 < 3) et (4 > 5) et !(4=6) et (32<76)
5) Abs(5-8)+sqr(3)-sqrt(16)+6-3*4-6*2+4+5*2
6) 2 + 13 * 4-3*2+9-5/2-17 div 2 +17 mod 4 + 5+6-4*6-5
7) 12.0 - 3 + 4*7*8-19/2-8+sqrt(9)-3+5*2
8) vrai et (faux ou vrai) ou faux et vrai ou vrai et ! (faux)
9) (2 < 3) et (4 > 5) ou (4=6) et (32<76)ou (45+2=76+2)
10) Abs(45-78)+sqr(3)-sqrt(16)+6-3*4-6/2+4+5*2
Les opérateurs logiques

Ils sont généralement associés aux conditions


composées ou à des variables logiques. Les opérateurs
logiques de base sont:
▪ la négation.
▪ L’opérateur Et logique
▪ L’opérateur Ou logique
NB: Une variable logique fonctionne comme une
condition c’est-à-dire elle ne peut avoir que deux
valeurs : VRAI ou FAUX.

Présenté par Moustapha DER Enseignant – Chercheur – Chef de projet – CEO - AUTEUR DU LIVRE : « LE
GUIDE DU GENIE LOGICIEL » Contacts : 77 656 84 51 / 77 836 12 12 Email : djamilder@gmail.com

Vous aimerez peut-être aussi