Vous êtes sur la page 1sur 18

UNITE DE FORMATION

ALGORITHMIQUE ET LOGIQUE DE PROGRAMMATION

PLAN DE COURS :

PARTIE I : LES ELEMENTS DE BASE DE L’ALGORITHMIQUE ET LES


STRUCTURES DE TRAITEMENT.

CHAPITRE 1 : LES ELEMENTS DE BASE DE L’ALGORITHMIQUE


I. Introduction générale
1. Définitions
2. Syntaxe générale d’un algorithme
3. Illustration de fonctionnement d’un ordinateur
4. Organigramme
5. Exemples
II. Les variables, Type et Valeur
1. Définition
2. Exemples
3. Exercices
III. Les opérations de transfert
1. Instruction de sortie
1.1. Définition
1.2. Syntaxe
1.3. Exemple
1.4. Exercices
2. Instruction de lecture
2.1. Définition
2.2. Syntaxe
2.3. Exemple
2.4. Exercices
3. Instruction d’affectation
3.1. Définition
3.2. Syntaxe
3.3. Exemple
3.4. Exercices

Formateur : GAHI Saïd Page 1 sur 18


CHAPITRE 2 : LES STRUCTURES DE TRAITEMENT

I. Les structures alternatives


1. La structure alternative simple : SI … Alors …
1.1. Syntaxe
1.2. Exemple
1.3. Exercices
2. La structure alternative complexe : SI … Alors … Sinon ….
2.1. Syntaxe
2.2. Organigramme
2.3. Exemple
2.4. Exercices
3. La structure alternative Selon … Faire
3.1. Syntaxe
3.2. Exemple
3.3. Exercices
II. Les structures itératives
1. La structure Pour … à …. Faire
1.1. Syntaxe
1.2. Exemple
1.3. Exercices
2. La structure Tant que ….. Faire
2.1. Syntaxe
2.2. Organigramme
2.3. Exemple
2.4. Exercices
3. La structure Répéter …. Jusqu’à
3.1. Syntaxe
3.2. Exemple
3.3. Exercices

Formateur : GAHI Saïd Page 2 sur 18


PARTIE I : LES ELEMENTS DE BASE DE L’ALGORITHMIQUE ET LES
STRUCTURES DE TRAITEMENT.

CHAPITRE 1 : LES ELEMENTS DE BASE DE L’ALGORITHMIQUE


IV. Introduction générale
1. Définitions
8 Un algorithme représente l’enchaînement des actions (instructions) nécessaires pour faire exécuter
une tache à un ordinateur.
8 Un algorithme est une suite d’instruction à suivre pour réaliser un travail, il permet d’expliciter
clairement les idées de résolution d’un problème indépendamment d’un langage de
programmation.
8 Un programme est un assemblage et un enchaînement d’instructions élémentaires écrits dans un
langage de programmation, et exécuter par un ordinateur afin de traiter les données d’un problème
et de renvoyer un ou plusieurs résultats.

Données d’un Programme Résultats


problème En : C, VB… attendus

Exemple de langage de programmation : C, C++, Pascal, VB

Remarque :
- Un algorithme s’écrit le plus souvent en un pseudo langage de programmation
appelée : langage algorithmique.
- L’algorithme n’est pas exécutable par la machine mais il a l’avantage d’être
traduit facilement de tous les langages de programmation.

Formateur : GAHI Saïd Page 3 sur 18


2. Intérêt de l’algorithmique

3. Syntaxe générale d’un algorithme


Nom de l’algorithme

La structure générale d’un algorithme est la suivante :


Algorithme Nom_algorithme
Partie Var // Liste des variables à utilisées// : Type
déclaration Const // Liste des constantes//

Debut Corps de l’algorithme


Liste d’instructions
Fin.

4. Illustration de fonctionnement d’un ordinateur

Unité centrale
Dispositifs d’entrées :
- Clavier
- Souris
Mémoire central
(RAM) Exécutant

Saisie 0 1 0
Exécution

Résultats
Dispositifs d’entrées :
- Ecran Affichage
- Imprimante

Transfert interne

Formateur : GAHI Saïd Page 4 sur 18


En général, la résolution d’un problème se fait par les étapes suivantes :

5. Organigramme
Un organigramme est une représentation graphique d’un algorithme. Pour le construire on utilise une
symbolisation bien formalisée.

Formateur : GAHI Saïd Page 5 sur 18


6. Démarche à suivre pour résoudre un problème
Les trois phases principales de création d’un bon programme sont : l’analyse, Algorithme et la
programmation.
8 L’analyse de problème : il doit permettre de formuler ce qu’il faut résoudre, elle spécifie les
données à saisir, le traitement qu’il doit effectuer l’ordinateur et les résultats à affichées.
8 L’algorithme : définit la structure des données et l’enchaînement et l’organisation des
traitements.
8 La programmation est la concrétisation (implémentation) des étapes précédentes.
Illustration :
Réflexion sur
le problème Codage en langage de programmation

#
Problème Algorithme Programme

Algorithme nom_algo Exemple :
Spécification des : Var - C
Const - C++
1. Données à saisir par l’utilisateur Debut - C#
2. Traitement qu’il doit effectuer - Pascal
Suite
l’ordinateur - VB
d’instructions

3. Résultats a affichées Fin

Formateur : GAHI Saïd Page 6 sur 18


V. Les variables, Type et Valeur
1. Définition
Les programmes ont pour but de traiter différentes données afin de produire des résultats.
Les données d’un programme doivent être récupérer on mémoire centrale, à partir du clavier ou d’un
fichier, pour pouvoir être traiter par le processeur qui exécute les programmes. Ainsi, toutes les
données d’un programme sont mémorisées en mémoire centrale, dans des cases que l’on appelle
VARAIBLE.

2. Déclaration d’une variable


Pour qu’un programme puisse utiliser une variable, il faut au préalable au préalable que cette variable
soit déclarée. Chaque variable possède un identificateur, un type et une valeur qu’on lui attribuer.

Variable Type
Identificateur

Valeur

3. Exemple :
Pour déclarer une variable il faut le précéder par le mot : VAR
Pour les constantes on utilise le symbole : Const
VAR Mt_net : Réel , VAR Qté : Entier , Var exist = boolean , Const tva = 0,055

Formateur : GAHI Saïd Page 7 sur 18


4. Type de données :

VI. Les opérations de transfert


1. Instruction de sortie : Affichage
1.5. Définition
Cette action permet de communiquer (afficher) un résultat ou un message sur écran ou sur imprim
ante pour l’utilisateur.
1.6. Syntaxe
Ecrire (″Paramètre / message″)
Avec paramètre peut être : paramètre : variable / expression / constante
- Expression
- Variable
- Constante : nombre / message Expression
1.7. Exemple
- Ecrire (″ la valeur de 2 * 5 est : ″ , 2 * 5)
Message

Variable
- Ecrire (A)

2. Instruction de lecture : la saisie


Formateur : GAHI Saïd Page 8 sur 18
2.5. Définition
Cette action permet à l’ordinateur d’acquérir des données à partir de l’utilisateur, et de les stockées
dans des cases mémoires bien définit (qui sont les variables déclaré)
2.6. Syntaxe
Lire (variable1, variable2)
2.7. Exemple
Ecrire (″ donner a et b″)
Lire (a, b)
3. Instruction d’affectation
3.5. Définition
C’est l’action de charger une valeur dans une variable. Cette valeur peut etre elle-même une variable,
le résultat d’une expression arithmétique ou logique ou une constante
3.6. Syntaxe
Variable ← variable / Constante / Expression
3.7. Exemple
- Variable ← Variable (Exemple : A ← B, A ← C)
- Variable ← Constante (Exemple : A ← 2, B ← 3)
- Variable ← Expression arithmétique (Exemple : A ← B*2, C ← A * 13MOD3)
- Variable ← Expression logique (Exemple : A ← (B≥2) ET (C≥10)

Formateur : GAHI Saïd Page 9 sur 18


Synthèse
er
1 chapitre

Réaliser un algorithme c’est exprimer dans un langage bien précis (langage algorithmique),
les règles de traitement d’un problème pour le soumettre (coder, implémenter) en un langage de
programmation afin d’être exécuter par un ordinateur.
Les données d’un programme sont mémorisées dans des variables qui sont des cases
mémoires. Une variable est un contenant qui contient une et une seule valeur à la fois à un moment
donné. Une variable est caractérisée par :
) Un identificateur (son nom) attribuer par le programmeur
) Une valeur (qui peut être variée au cours de programme)
) Un type qui détermine sa taille et les opérations possibles.
Les opérations de transfert
) Ecrire pour l’affichage des commentaires
) Lire pour la saisie des données à partir d’un périphérique d’entrée
) Affectation c’est le transfert interne des données.

0 Remarques importantes :
8 Toute variable utilisée dans un algorithme doit être déclarée au début de l’algorithme,
une fois et une seule.
8 L’affectation de valeur à une variable peut être effectuée autant de fois que l’on veut au
cours d’un algorithme. La valeur de la variable sera alors modifiée à chaque
affectation.
8 La variable réceptrice d’une affectation doit être de même type que de la valeur à
affecter ou de type compatible. Le type est dit compatible s’il est inclus dans le type de
la variable réceptrice. Exemple (REEL ← Entier) est possible mais pas l’inverse.

Formateur : GAHI Saïd Page 10 sur 18


CHAPITRE 2 : LES STRUCTURES DE TRAITEMENT

III. Les structures alternatives


1. La structure alternative simple : SI … Alors …
1.4. Syntaxe

SI Condition Alors Faux


Condition
Traitement

Fsi. Vrai

Traitement

Suite de programme

2. La structure alternative complexe : SI … Alors … Sinon ….


2.1. Syntaxe

SI Condition1 Alors
SI Condition Alors
Traitement1
Traitement1
Sinon
Sinon Si condition2 Alors
Traitement2
Traitement2 Sinon
Fsi. Traitement3
Fsi
Fsi.

Formateur : GAHI Saïd Page 11 sur 18


2.2. Organigramme

Vrai Faux
Condition

Traitement1 Traitement2

Suite de programme

Exemple n° 01 :
Ecrire un algorithme qui permet de calculer le maximum de deux nombre entiers A et B.
Algorithme Maximum
VAR A, B : entier
Debut Ecrire (″donner la valeur de A et B :″)
Ecrire (″donner la valeur de A :″) Lire (A, B)
Lire (A)
Ecrire (″donner la valeur de B :″)
Lire (B) A>B

Si A > B alors
Max ← A Max ← A Max ← B

Sinon
Max ← B Ecrire (″Le maximum est de A et B est :″, Max)
Fsi
Ecrire (″Le maximum est de A et B est :″, Max)
Fin

Formateur : GAHI Saïd Page 12 sur 18


3. La structure alternative Selon … Faire
3.1. Syntaxe

Selon Expression faire

Valeur 1 de l’expression : Traitement 1


Valeur 2 de l’expression : Traitement 2
.
.
Valeur n de l’expression : Traitement n
Sinon
[Traitement par défaut]
Fin selon

Formateur : GAHI Saïd Page 13 sur 18


IV. Les structures itératives

Il a arrive souvent dans un algorithme que dans la même action soit répéter plusieurs
événement. Il est alors fastidieux d’écrire un algorithme qui contient de nombreuses fois la même
instruction. Il est alors impossible de savoir combien de fois la même instruction doit être décrit. Pour
gérer ces cas on utilise les Boucles.
4. La structure Pour … à …. Faire
Le nombre de répétition est connu à l’avance.
4.1. Syntaxe

POUR compteur = Valeur initiale à Valeur finale FAIRE

Instructions à répéter

FPOUR.

4.2. Organigramme :

I Å B1 + B2

Instructions

Suite de la boucle
4.3. Exemple
Exemple n° 01 :
Calculer la commission d’un commerciale qui représente 10% de Chiffre d’affaire réaliser par mois,
son salaire est composé d’une partie fixe de 8000 DH et de la commission calculée.
Ecrire un algorithme qui permet de terminer le salaire mensuel du commercial.
Exemple n° 02 :
Ecrire un algorithme qui permet de calculer la somme S =1 + 2 + 3 +…….. + N.

Formateur : GAHI Saïd Page 14 sur 18


5. La structure Tant que ….. Faire
La structure Tant que permet de répéter un bloc d’instructions tant que une condition de continuité est
vraie.
5.1. Syntaxe

TANT QUE Condition de continuité FAIRE

Traitement

FTQ.

5.2. Organigramme

Oui Non
Condition de
continuité

Bloc d’instructions Suite de programme

Bloc d’instructions

5.3. Exemple
Exemple 01 :
Afficher le mot « Bonjour » cinq fois à l’écran
I←1
Tant Que I <=5 Faire
Ecrire (″ bonjour″)
I=I+1
FTQ.
Exemple 02:
Ecrire un algorithme qui permet de calculer la somme S = 1 + ½ + 1/3 + ……. + 1/n.
- En utilisant la boucle Pour
- En utilisant la boucle Tant Que

Formateur : GAHI Saïd Page 15 sur 18


6. La structure Répéter …. Jusqu’à
L’instruction répéter permet de faire répéter l’exécution jusqu’à la condition soit vrai.
6.1. Syntaxe

Répéter

Bloc d’instructions

Jusqu’à condition.

6.2. Organigramme

Exécution de bloc d’instruction

Test d’arrêt
Jusqu’à

Faux
Condition

Vrai
Suite de programme

6.3. Exemple
Ecrire un algorithme qui permet d’afficher « bonjour » cinq fois à l’écran

I←0
Répéter
Ecrire (″ bonjour″)
I←I+1
Jusqu’à I = 5

Formateur : GAHI Saïd Page 16 sur 18


Travaux pratique n° 01
Chapitre 1

Pré requis :

Ô Analyse des problèmes en spécifiant les données d’entrées et celles de sorties et les
traitements doit on effectuer sur ces données.
Ô La syntaxe générale d’un algorithme.
Ô La déclaration des variables.
Ô Syntaxe des trois opérations de transfert (Ecrire, Lire, Affectation)

Exercice n° 01 :

Ecrire un algorithme qui permet de calculer la surface d’une cercle sachant que :
La surface est S = 3.14 * R *R (avec R : le rayon de la cercle).

Exercice n° 02 :

Ecrire un algorithme qui permet de calculer les expressions suivantes :


A = N * (N + 1) et B = K * (N-1) * A – 10

Exercice n° 03 :

Ecrire un algorithme qui permet de calculer le montant net d’une facture sachant que
Montant Net = Quantité * Prix Unitaire.

Exercice n° 04 :

Ecrire un algorithme qui permet de calculer le salaire d’un ouvrier qui a travaillé une journée chez un
pompiste qui travaille des heures normales au prix de 9 DH par heure et les heures supplémentaires au
prix de 5.5 DH par heure.

Exercice n° 05 :

Ecrire un algorithme qui permet de permuter le contenu de deux variables numériques A et B.

Exercice n° 06 :

Evaluer les expressions suivantes :


- 2 + 3 * 5 – 7 * (5 -4)
- (17 MOD 10) DIV 3

Formateur : GAHI Saïd Page 17 sur 18


Travaux pratique n° 02
Chapitre 2 (les structures de traitement)
Exercice n° 01 :

Un client achète une certaine quantité d’un produit à un prix unitaire donné. Le prix brut est calculer
par la formule suivante : PB = PU * Q
En plus, si le prix brut est supérieure à 10.000 en ajoute 400 de frais de transport.
T.A.F :
Ecrire un algorithme qui permet de calculer le prix net à payer.

Exercice n° 02 :

Ecrire un algorithme qui permet de calculer et d’afficher le montant net d’une facture, sachant que :
Remise = Montant Brut * Taux remise
Montant Net = Montant Brut – remise
En plus :
- Le taux remise = 0 si le montant Brut est inférieur à 3000
- Le taux remise = 3% si 3000 <= Montant Brut <5000
- Le taux remise = 5% si le montant Brut >=5000

Exercice n° 03 :

Ecrire un algorithme qui permet de calculer et d’afficher la commission et le chiffre d’affaire net,
sachant que :
Le chiffre d’affaire net = chiffre d’affaire – commission
En plus :
- Le taux de commission est égale 3% pour un chiffre d’affaire inférieure à 10.000
- ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ 7% si le chiffre d’affaire est compris entre 10.000 et 15.000
- ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ 11% si le chiffre d’affaire est compris entre 15.000 et 20.000
- ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ ″ 15% si chiffre d’affaire est supérieur à 20.000.

Exercice n° 04 :

Ecrire un algorithme qui permet de saisir trois notes avec trois coefficients différents d’un étudiant et
calculer la moyenne puis déterminer sa mention, sachant que :
- Si la moyenne est inférieure strictement à 10 alors « Rattrapage »
- Si la moyenne est comprise entre 10 et 12 alors « Passable »
- Si la moyenne est comprise entre 12 et 14 alors « Assez bien »
- Si la moyenne est supérieure à 14 alors « Bien »

Exercice n° 05 :

Ecrire un algorithme qui permet de lire la valeur de la variable CAR et d’afficher par les messages
suivants celui correspond à la valeur trouvé.
- Rouge si la couleur vaut R ou r
- Vert si la couleur vaut V ou v
- Bleu si la couleur vaut B ou b
- Noir si la couleur vaut N ou n

Formateur : GAHI Saïd Page 18 sur 18