Vous êtes sur la page 1sur 18

Cours d’Algorithmique I

PREMIER BACHELIER INFORMATIQUE

Il y a une différence entre étudier et rester à côté de ses notes. Beaucoup de gens pensent
faire la première action en faisant la deuxième, du fait que les deux ont la même apparence, mais
n‟ ont pas le même résultat.
Gabin NDAY-A-MANDE MULOPWE

La réussite est liée à la patience mais elle dépend également de beaucoup de bonne volonté.
Gabin NDAY

L‟ Algorithmique constitue une illustration de la nécessité d‟ une telle convergence de disciplines


et de techniques ; c‟ est en effet à partir d‟ algorithmes que les informaticiens pourront élaborer
les logiciels utilisant au mieux les matériels informatiques de plus en plus évolués mis à leur
disposition par les progrès de la technique électronique.

=J. GIRERD=

C.T Gabin NDAY-A-MANDE MULOPWE


Concepteur des systèmes d’information 2023-2024
Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

PLAN DU COURS D’ALGORITHMIQUE


I. TITRE
 INTITULE : ALGORITHMIQUE I
 TITULAIRE : Gabin NDAY-A-MANDE MULOPWE
Licencié en Informatique de gestion ;concepteur des systèmes
d’information et Analyste programmeur. Chef de Travaux
 ANNEE ACADEMIQUE : 2023-2024

II. INFORMATIONS GENERALES / COURS


 FILIERE : Informatique (Options : Génie Logiciel & Système
Informatique
 Crédits : 4 . (60 Heures)
 Heures théoriques : 30 Heures
 Heures pratiques : 15 Heures
 Heures TPE : 15 Heures
 Type de cours : Cours unique, obligatoire
 Local : Salle KIMPESA

 Langue : Français

III. INFORMATIONS GENERALES / ENSEIGNANT


 Faculté des sciences informatiques UNIKAM Modalités
de contact : 0814220447, 0974424474

Par email, à gabinnday@gmail.com

IV. DESCRIPTION DU COURS


 Place du cours dans le programme :
Cours fait partie de la chaine de programmation à côté des cours de
langages de programmation.
Il sert de cours de base à la chaine.

 Pré-requis :

C.T Gabin NDAY-A-MANDE MULOPWE


Concepteur des systèmes d’information 2023-2024
Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

Mathématiques générales et logique formelle


Informatique générale :
- Eléments d’informatique
- Introduction au système d’exploitation
- Laboratoire (Bureautique)
 Auditeurs visés : BAC 1 Informatique (Tous)
 Supports d’apprentissage :
• Support de cours
• Recueil d’exercices non résolus

V. OBJECTIFS ET COMPETENCES
 PROFIL DU FORME A LA LICENCE (LMD) : Analyste programmeur

 ATTENTE DE LA SOCIETE : Capacité d’appréhender les problèmes de


gestion liés à la collecte, au traitement, au stockage et à l’accès à
l’information dans les organisations, de les formaliser par les méthodes
informatiques et d’élaborer des solutions sous forme de bases de
données, programmes (Logiciels) et réseaux.

 OBJECTIF GENERAL
Ce cours initie les étudiants aux concepts, au raisonnement et aux
méthodes de la programmation informatique, ainsi qu’à la résolution des
problèmes par l’approche algorithmique.

C.T Gabin NDAY-A-MANDE MULOPWE


Concepteur des systèmes d’information 2023-2024
Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 OBJECTIFS SPECIFIQUES

OBJECTIFS SPECIFIQUES COMPETENCES A DEVELOPPER


- Analyser un problème simple de traitement
1. Définir et comprendre les de l’information, le formaliser dans le langage
concepts. algorithmique.
-
Ecrire le pseudocode de l’algorithme
2. Comprendre les structures permettant de résoudre ce problème.
-
de base de la construction Traduire le pseudocode de l’algorithme en
d‟ un algorithme. code source PASCAL et en tester le
fonctionnement sur un ordinateur au moyen
d’un compilateur Free Pascal ou Turbo Pascal

VI. CONTENU
1. Introduction (4h)
2. Conception d’un algorithme (4 h)
3. Les variables et les constantes (8 h)
4. Les entrées et les sorties (4 h)
5. Les structures de contrôle (4 h)
6. Les tableaux (4 h)
7. Les sous- programmes (4 h)

VII. METHODES D’ENSEIGNEMENT-APPRENTISSAGE


 Exposés magistraux et interactions Professeur/ Etudiants
 Simulation du fonctionnement des algorithmes
 (Démonstration) des programmes sur un ordinateurs en laboratoire

VIII. MODALITES D’EVALUATION


 2 Interrogations
 4 travaux pratiques de programmation

C.T Gabin NDAY-A-MANDE MULOPWE


Concepteur des systèmes d’information 2023-2024
Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 (Evaluation formative) 1 Exercice de révision avant chaque séance. 


Examen semestriel (50%)

 Travaux chaque jour si l’enseignant estime cela necessaire

IX. BIBLIOGRAPHIE SELECTIVE

1. B. MUYER, Méthodes de programmation, Ed. Eyrolles, Paris, 1978.

2. Chantal RICHARD, Patrice RICHARD, Initiation à l’algorithmique 85 exercices corrigés,


Ed. Belin, Paris, Juin 1981.

3. Charles CORGE, Eléments d’informatique Informatique et démarche de l’esprit,


Larousse, Paris, 1975.

4. Jean Pierre LAURENT, Jacqueline AYEL, Exercices commentés d’analyse et de


programmation, Ed. Dunod, Paris, 1985.

5. L. ALBERT, P. GASTIN, B. PETAZZONI, A. PETIT, N. PUECH, P. WEIL, Cours et


exercices d’informatique, Ed. Vuibert, Paris, 1998.

6. Thomas H. CORMEN, Charles E. LEISERSON, Ronald L. RIVEST, Clifford STEIN,


Algorithmique cours avec 957 exercices et 158 problèmes 3 ème Edition, Ed. Dunod,
Paris 2010.

7. Yves GRANJON, Informatique Algorithmiques en Pascal et en langage C, Ed. Dunod,


Paris, 1999.

X. INFORMATIONS ADDITIONNELLES
 Matériels pédagogiques :
- Ordinateur muni d‟ un système d‟ exploitation Vista, Windows
7 ou Windows 8.

- Logiciels Free Pascal et Turbo Pascal


- Vidéo projecteur et écran de projection
- Diffuseur et micro sans fil

C.T Gabin NDAY-A-MANDE MULOPWE


Concepteur des systèmes d’information 2023-2024
Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

INTRODUCTION
1. Généralités

L’algorithme est la description d’un traitement automatisé de données


destiné à être réalisé sur un ordinateur, après avoir traduit cette description dans
un langage de programmation. Il est aussi défini comme une méthode de résolution des
problèmes suivant un enchaînement, déterminé des règles opératoires.

Il est défini comme une procédure de calcul bien définie qui prend en
entrée une valeur, ou un ensemble de valeurs, et qui donne en sortie une valeur, ou un
ensemble de valeurs. Un algorithme est donc une séquence d’étapes de calcul qui
transforment l’entrée en sortie.

L’algorithmique est la discipline qui consiste, après analyse du


problème à résoudre, à définir cette description du traitement, et ce, de manière
totalement indépendante du langage qui sera choisi pour la programmation.

Cet ensemble d’actions qui doivent être réalisées en vue de satisfaire


une spécification donnée est appelé ALGORITHME.

Ce mot vient d’un célèbre mathématicien arabe Abû Abdallah Mohammed


ibn Musã AL KHWARIZMI Al-Magusi (780-850) qui, pour la première fois l’a écrit dans
son œuvre „„Hisab al-jabr w’al-muqabala‟ ‟ en 825 qui signifie : « L’action de faire
passer et d’agencer les parties d’un tout » ou « l’action de reconstituer un vase brisé »
en d’autres termes la description d’une suite finie d’actions permettant d’aboutir à un
résultat déterminé.

L’algorithme est une suite d’instructions, qui, une fois exécutée


correctement, conduit à un résultat donné. Chaque action qui constitue l’algorithme,
doit comporter la désignation des objets sur lesquels elle doit porter. Il est encore défini
comme un énoncé qui décrit une action à réaliser susceptible d’être comprise par un
processeur.

Un algorithme suppose l’existence d’un processeur (Abstrait ou réel)


capable de comprendre et d’exécuter les actions qui le compose.

Généralement, un ingénieur software (ingénieur logiciel), pour un problème

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

donné, écrit une suite d’algorithmes successifs s’adressant à une suite des processeurs
abstraits de moins en moins compétents. Cette suite d’algorithmes successifs amène
l’ingénieur software à décomposer de façon répétitive chacune des actions à réaliser en
actions plus simples tels que :

 Le premier algorithme se limite généralement à définir avec précision la


spécification globale, et s’adresse à un processeur abstrait très
compétent,
 Le dernier algorithme ne contiendra que des actions suffisamment
simples, atomiques, primitives ou élémentaires pour être exécuté
directement par le processeur réel disponible.

2. Définition des quelques concepts clés


On appelle processeur une entité capable de comprendre, et d’exécuter
des algorithmes. Il est caractérisé par :
• les objets sur lesquels il agit,
• les actions réalisées directement sur ces objets.

On appelle objet manipulé, un objet sur lequel le processeur sait


directement réaliser une action.

On appelle action élémentaire ou primitive ou atomique, l’action que le


processeur sait réaliser directement dès qu’elle lui est donnée.

On appelle information un support formel d’un élément de connaissance


humaine susceptible d’être représentée à l’aide de conventions (codages) afin
d’être conservée, traitée ou communiquée.

On appelle abstraction, un concept qui consiste à construire des couches


des machines abstraites de plus en plus puissantes jusqu’à ce que l’utilisateur à la
limite n’ait besoin que d’une seule instruction pour exprimer une idée. C’est aussi
la capacité qu’a un système de cacher sa complexité interne.

3. Niveau d’abstraction

La difficulté majeure dans la conception d’un algorithme résulte dans la

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

grande différence qui existe entre le niveau de complexité de l’action que l’on veut faire
réaliser, et le niveau très élémentaire, constitué des actions primitives que le processeur
final est en mesure de réaliser. De ce fait, l’écriture de l’algorithme final s’avère
impossible dans un premier temps. Sa conception nécessite de passer par un certain
nombre d‟ étapes intermédiaires dont chacune permet de cacher une partie de la
complexité.

La finalité à atteindre étant la même, chaque étape intermédiaire la


décrit en utilisant les actions primitives disponibles de ce niveau, qu‟ un processeur
abstrait de ce même niveau supposé plus intelligent que le processeur final serait en
mesure de réaliser.

Ainsi, chacune des étapes intermédiaires de la réalisation de l‟ algorithme


final, s‟ exprime elle-même sous forme d‟ un algorithme. Les algorithmes intermédiaires
sont constitués d‟ actions abstraites par rapport à l‟ algorithme final supposées
exécutées par des processeurs abstraits, tandis que l‟ algorithme final ne comporte que
les actions primitives du processeur réel visé pour l‟ exécution.
4. Algorithme et langage de programmation

L‟ algorithme se construit simplement à partir de mots clés et de


conventions, généralement en français, en utilisant un certain nombre de principes
directeurs.
Un langage de programmation à l‟ opposé de la conception d‟ un algorithme
peut être considéré comme un niveau final d‟ abstraction, et qu‟ il existe déjà des actions
primitives déterminées à l‟ avance. C'est-à-dire les étapes intermédiaires ne sont pas
représentées dans un langage de programmation.

Un algorithme bien fait se doit d‟ être optimisé et correctement conçu, de


sorte que sa traduction en langage de programmation soit rapide, quasiment systématique
et corresponde à un programme qui fonctionne de manière optimale.

Sous le vocable programmation se cachent deux activités. L‟ une consiste à


faire l’analyse du problème à traiter, afin d‟ élaborer un algorithme approprié, l‟ autre
est la traduction de cet algorithme dans un langage de programmation compréhensible
par l‟ ordinateur, qui pourra se charger de l‟ exécuter.

Ainsi, dans la conception d‟ un algorithme, on sait apercevoir que:

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 toutes les étapes intermédiaires sauf celle consistant à écrire le


programme final sont indépendantes du langage de programmation visé ;

 le résultat de chaque étape peut être considéré comme un algorithme.

Avec ces deux éléments, nous sommes amenés à concevoir un langage


algorithmique ou un pseudo-code.

Un langage algorithmique est un ensemble des notations générales


permettant d‟ exprimer l‟ ensemble des algorithmes. Il permet d‟ écrire sous forme
d‟ algorithmes successifs la résolution d‟ un énoncé.

La réécriture dans un langage de programmation particulier d‟ un


algorithme exprimé en pseudo-code s‟ appelle le codage.

5. Avantages d’un langage algorithmique

Le langage algorithmique présente quatre avantages qui sont :

1) Permettre de raisonner par niveau d’abstraction décroissante


Ce langage permet d‟ exprimer les algorithmes quel que soit les processeurs
abstraits auxquels ils sont destinés. Lors de la conception d‟ un algorithme, on
peut faire intervenir autant de processeurs abstraits intermédiaires selon que
le concepteur trouvera nécessaire pour aboutir à l‟ algorithme final.

2) Assouplir les contraintes syntaxiques et sémantiques


Un programme doit être compris et interprété par un processeur, par
conséquent, il doit être facilement décodé par ce dernier. De ce fait, tous les
langages de programmation ont chacun une grammaire et une orthographe qu‟ il
faudrait respecter scrupuleusement pour écrire un bon programme qui répond
aux attentes du demandeur.

3) Unifier la méthode de conception des programmes quel que soit le langage de


programmation visé
En considérant plusieurs programmeurs qui connaissent chacun un langage de
programmation différent des autres. En produisant un même algorithme, chaque
programmeur pourra produire le code dans son langage, et arriver à produire un
programme qui donne le même résultat.

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

La maîtrise du langage algorithmique permet une maîtrise facile et aisée de


plusieurs langages de programmation.

4) Permettre de fractionner la difficulté de conception en séparant l’analyse et


le codage
Au niveau de l‟ analyse, le langage algorithmique se concentre sur la seule
signification du programme (Que veut-on faire ? comment le faire ?) qu‟ on
appelle sémantique sans tenir compte des contraintes syntaxiques ainsi que la
réflexion sur les outils destinés à faciliter la mise au point, qui sont utilisés lors
de l‟ étape de codage.
er
CHAPITRE I : CONCEPTION D’UN ALGORITHME
I.1. Généralités

Dans la résolution d‟ un problème, il est nécessaire et obligatoire de présenter


tous les cas possibles et de façon exhaustive, des détails même les moindres que l‟ énoncé
donne.

Ainsi, il s‟ agit d‟ un travail extrêmement difficile, laborieux et minutieux pour


les débutants, qui n‟ ont aucune chance de réussir sans une méthode rigoureuse et
systématique qui permet de :

 Simplifier le problème à résoudre, et


 Rendre rigoureuse la démarche de conception d‟ un programme.

Une application courante est justiciable d‟ un traitement informatique si :

• Il est possible de définir et de décrire parfaitement les données d‟ entrée et les


résultats de sortie.

• Il est possible de décomposer le passage de ces données vers ces résultats en une
suite d‟ opérations élémentaires dont chacune peut être exécutée par une machine.

I.2. Analyse descendante


Toute conception d‟ un algorithme nécessite de raisonner simultanément sur
les actions à réaliser (qu‟ il s‟ agit de décomposer), et sur les objets à mettre en œuvre
(qu‟ il s‟ agit de déterminer). Le rôle d‟ une méthode de conception est de :

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 Faciliter la créativité du programmeur ; 


Permettre de contrôler cette créativité.

La méthode descendante se base sur le principe de « DIVISER pour REGNER


». Cette méthode consiste à résoudre un problème de manière récursive, en appliquant
trois étapes à chaque niveau de la récursivité :

 DIVISER : le problème en un certain nombre de sous-problèmes qui sont des


instances plus petites du même problème.
 REGNER : sur les sous-problèmes en les résolvant de manière récursive. Si la
taille d‟ un sous-problème est suffisamment réduite, on résout directement.
 COMBINER : les solutions des sous-problèmes pour produire la solution du
problème originel.

On définie en premier lieu avec précision l‟ action ABSTRAITE qu‟ il s‟ agit de


réaliser. C‟ est la SPECIFICATION ;
On décompose chaque action abstraite en actions plus simples. C‟ est la
DECOMPOSITION. Cette décomposition permet de définir un nouvel algorithme ;

On recommence les deux premières étapes jusqu‟ à l‟ obtention d‟ actions


primitives par rapport au processeur visé pour l‟ exécution.

La décomposition de chaque action abstraite peut se réaliser à travers trois


modèles de décomposition à savoir LA SEQUENCE, L‟ ALTERNATIVE et la
REPETITION.

Ces trois schémas de décomposition sont suffisants pour écrire n‟ importe


quel algorithme.

Tout langage de programmation sera capable de le coder, et tout processeur


de ce niveau devra être capable de le comprendre et de l‟ exécuter.

Par ailleurs, un algorithme bien conçu, doit répondre aux cinq caractéristiques
suivantes :
 FINITUDE : Il doit avoir un point d‟ arrêt. Un nombre d‟ étapes bien connu,

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 PRECISION : Il doit être sûr du résultat obtenu. Pour cela, chaque instruction
doit être spécifiée,

 DOMAINE DES ENTREES : Il doit être spécifié,


 DOMAINE DES SORTIES : Il doit être connu,
 EXECUTABILITE : Il doit déboucher sur un programme exécutable en un temps
fini et raisonnable.

I.3. DEMARCHE DE CONCEPTION D’UN PROGRAMME

La conception d‟ un programme qui doit résoudre un problème donné doit

suivre la démarche ci-après :

Enoncé du problème
Analyse

Algorithme
Codage

Programme source Erreur syntaxique Erreur sémantique

Compilation

Programme exécutable
Exécution

Résultat

La phase d‟ analyse et celle de la traduction sont des opérations

intellectuelles humaines, tandis que la phase de compilation et celle d‟ exécution sont

réalisées automatiquement par la machine.

Une erreur syntaxique est une faute d‟ orthographe ou de grammaire. Elle est

commise dans la phase de codage et elle est signalée par le compilateur quand il ne sait

pas interpréter une instruction du programme source afin de la traduire dans le langage

machine (Langage assembleur). Pas de programme exécutable.

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

Une erreur sémantique est une faute très grave qui est due à une mauvaise

conception de la méthode suivie pour résoudre ce problème (phase d‟ Analyse). Là nous

avons un programme exécutable mais qui ne répond pas aux attentes du client, d‟ où

l‟ algorithme doit être corrigé à partir de la phase d‟ analyse.

NB : chaque programme (algorithme) devra avoir un nom et doit avoir trois parties :

 L‟ entête
 La partie déclarative 
Le corps du programme.

EXEMPLES

1. Ecrire la suite d‟ instructions qui nous permet de calculer et d‟ afficher la somme


de deux nombres lus au clavier.

Solution 1

a.
• ACTIONS EN ENTREE
- Avoir les deux nombres

• TRAITEMENTS A EFFECTUER
- Calculer la somme de deux nombres

• RESULTATS A AFFICHER
- Afficher la somme de deux nombres

Au niveau 1, nous pouvons décrire l‟ algorithme comme présenté ci-haut.


Seulement il faut préciser que veut dire avoir les deux nombres, et calculer la somme de
deux nombres :

b.

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

- Lire le premier nombre


- Lire le deuxième nombre
- Calculer la somme de deux en additionnant le premier nombre au deuxième
nombre
- Afficher la somme obtenue

2. Ecrire les instructions nous permettant de déterminer le bénéfice obtenu par un


commerçant connaissant le coût d‟ achat de sa marchandise et le prix de vente.

Solution 2

a.
• ACTIONS EN ENTREE
- Avoir le coût d‟ achat de la marchandise
- Avoir le prix de vente de la marchandise

• TRAITEMENTS A EFFECTUER
- Calculer le bénéfice

• RESULTATS A AFFICHER
- Afficher le bénéfice

Au niveau 1, l‟ algorithme peut être décrit de la manière suivante.


Seulement il convient de préciser que veut dire calculer le bénéfice. L‟ algorithme du
second niveau pourra s‟ écrire de la manière suivante :

b.
- Lire le coût d‟ achat de la marchandise
- Lire le prix de vente de la marchandise
- Calculer le bénéfice en soustrayant du prix de vente le coût d‟ achat -
Afficher le bénéfice obtenu

3. Un examen comporte deux groupes d‟ épreuves. Chacun des deux groupes


d‟ épreuves est décomposé en épreuves d‟ enseignement général et en épreuves
d‟ enseignement professionnel.
Le règlement de l‟ examen stipule :

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 Les candidats ayant obtenu, à la fois, une note moyenne égale ou supérieure
à 10 sur 20 aux épreuves d‟ enseignement général et une note moyenne
égale ou supérieure à 8 sur 20 aux épreuves d‟ enseignement professionnel
sont admis à subir les épreuves du second groupe.
Les candidats non autorisés à passer les épreuves du second groupe sont
éliminés.

 Les candidats admis à passer le deuxième groupe sont dispensés des


épreuves d‟ enseignement général du deuxième groupe, si leur moyenne
dans ces disciplines au premier groupe d‟ épreuves est supérieure ou égale
à 12.
Si on s‟ intéresse au traitement d‟ un seul candidat, quel est l‟ algorithme
correspondant à ce texte.

Solution 3

a.
• ACTIONS EN ENTREE
- Avoir les cotes

• TRAITEMENTS A EFFECTUER
- Tester les cotes
• RESULTATS A AFFICHER
- Admettre le candidat avec dispense des épreuves d‟ enseignement général du
deuxième groupe
- Admettre le candidat sans dispense
- Eliminer le candidat

Au niveau 1 l‟ algorithme peut être considéré comme suit. Il sied de décomposer


l‟ action AVOIR LES COTES et TESTER LES COTES. Nous aurons :

b.
- Lire la note obtenue aux épreuves d‟ enseignement général
- Tester si la cote lue est inférieure ou égale à 20
- Lire la note obtenue aux épreuves d‟ enseignement professionnel
- Tester si la cote lue est inférieure ou égale à 20

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

- Tester si la cote obtenue aux épreuves d‟ enseignement général est égale ou


supérieure à 10 et si la cote obtenue aux épreuves d‟ enseignement
professionnel est supérieure ou égale à 8
Si oui : Admettre le candidat à passer les épreuves du second groupe

Si non : Eliminer le candidat

Nous constatons que le candidat qui est admis dans le deuxième peut ou ne pas
avoir de dispense. Par conséquent nous aurons à tester pour le candidat ayant réussi au
premier groupe si il peut avoir une dispense. Ainsi, nous aurons : c.
- Lire la note obtenue aux épreuves d‟ enseignement général
- Tester si la cote lue est inférieure ou égale à 20
- Lire la note obtenue aux épreuves d‟ enseignement professionnel
- Tester si la cote lue est inférieure ou égale à 20
- Tester si la cote obtenue aux épreuves d‟ enseignement général est égale ou
supérieure à 10 et si la cote obtenue aux épreuves d‟ enseignement
professionnel est supérieure ou égale à 8

Si oui :
- Tester si la cote obtenue aux épreuves d‟ enseignement général est égale ou
supérieure à 12

Si oui : Afficher le candidat est dispensé des épreuves d‟ enseignement


général du deuxième groupe

Si non : Afficher le candidat n‟ est pas dispensé des épreuves


d‟ enseignement général du deuxième groupe

Si non : Eliminer le candidat

4. le règlement intérieur d‟ une entreprise prévoit l‟ attribution d‟ une prime de


vacances selon les modalités suivantes :
 pour les salariés ayant plus de deux ans d‟ ancienneté et au moins deux
enfants, la prime est de 4% du salaire brut du mois de novembre;
 pour les salariés ayant plus de deux ans d‟ ancienneté et moins de deux
enfants, la prime est de 2% du salaire brut du mois de novembre;

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

 pour les autres salariés, cette prime est de 1,5% du salaire brut du mois
de novembre.

Ecrire la suite d‟ instructions nous permettant de résoudre cet énoncé.

Solution 4

• ACTIONS EN ENTREE
- Avoir l‟ ancienneté
- Avoir le nombre d‟ enfants
- Avoir le salaire brut du mois de novembre
• TRAITEMENTS A EFFECTUER
- Tester l‟ ancienneté
- Tester le nombre d‟ enfants
- Calculer la prime

• RESULTATS A AFFICHER
- Afficher la prime de l‟ agent

Au niveau 1 l‟ algorithme peut être écrit comme ci-haut. Il faut préciser


que veut dire tester l‟ ancienneté, tester le nombre d‟ enfants et calculer la prime. Il est
à signaler que la prime se calcule de 3 manières différentes. Nous aurons :
- Lire l‟ ancienneté (nombre d‟ années de travail)
- Lire le nombre d‟ enfants que l‟ agent possède
- Lire le salaire brut de l‟ agent du mois de novembre
- Tester si l‟ ancienneté est supérieure à 2
Si oui : Tester si le nombre d‟ enfants est supérieur ou égal à 2

Si oui : Calculer la prime en multipliant le salaire brut du mois


de novembre par 0.04

Si non : Calculer la prime en multipliant le salaire brut du mois


de novembre par 0.02

Si non : Calculer la prime en multipliant le salaire brut du mois de


novembre par 0.015

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024


Cours d’Algorithmique I
PREMIER BACHELIER INFORMATIQUE

5. la coopérative de l‟ association sportive du Grand-Paris accepte les commandes par


correspondance et les traite selon la procédure suivante : « Si le stock du produit
commandé est suffisant, la commande est préparée : rédaction du bon de livraison
et emballage de l‟ article ; cependant avant de préparer la commande il faut
vérifier si le client est membre de l‟ association. Dans le cas où le client n‟ est pas
membre sa commande est mise en attente et le service des adhésions est averti.
Si le stock est insuffisant, la commande est mise en attente pour un traitement
ultérieur.

Ecrire l‟ algorithme pour le traitement de la commande d‟ un client, correspondant


à ce texte.

Solution 5

• ACTIONS EN ENTREE
- Avoir la commande
- Avoir le stock
- Avoir l‟ état du client (Membre ou non membre)

• TRAITEMENTS A EFFECTUER
- Traiter la commande

• RESULTATS A AFFICHER
- Rédiger le bon de livraison
- Emballer l‟ article
- Placer la commande en attente et avertir le service des adhésions
- Placer la commande en attente pour un traitement ultérieur Faites la suite.

C.T Gabin NDAY-A-MANDE MULOPWE

Concepteur des systèmes d’information 2023-2024

Vous aimerez peut-être aussi