100% ont trouvé ce document utile (1 vote)
104 vues146 pages

Algorithm Es

Transféré par

AL3ADIL
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
104 vues146 pages

Algorithm Es

Transféré par

AL3ADIL
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Algorithmes

Année universitaire : 2023/2024


[Link] MRABTI
[Link]@[Link]
Sommaire :

1. Définition de l’algorithmique

2. Histoire

3. Problématique

4. Objectif

5. Utilisation

6. Un bon algorithme c’est quoi?

7. Analyse d’un algorithme

8. Complexité d’un algorithme


Définition de l’algorithmique

➢ L'algorithmique est l’ensemble des règles et des techniques qui sont impliquées dans la définition et la

conception d'algorithmes.

➢ La conception, en termes généraux, consiste à élaborer des plans, des schémas ou des modèles pour créer

quelque chose de manière intentionnelle et méthodique.

➢ Un algorithme est une suite finie et non-ambiguë d’opérations permettant de donner la réponse à un problème.
Définition

➢ Un algorithme est une suite d’actions ou d’instructions élémentaires qui doivent être exécutées dans un

ordre bien déterminé pour résoudre un problème ( ou réaliser un travail)


Définition

➢ L’ordinateur ne pourra rien faire si l’utilisateur ne lui fournissait les opérations et les procédures à

suivre.

➢ L’utilisateur doit décrire à l’ordinateur la suite des actions élémentaires permettant d’obtenir, à partir

des données, les résultats. Cette démarche porte le nom d’algorithme.


Résolution informatique d’un problème

➢ La résolution informatique d’un tel problème comporte les phases suivantes:

Analyse
Problème Algorithme

Traduction

Exécution
Résultat Programme
Résolution informatique d’un problème

➢ Phase d’analyse du problème

o Description des données connues et des résultats cherchés.

o Identifier les relations entre les données.

o Décrire les traitements à effectuer.

Dans cette phase, on dispose d’un processus informatique de résolution appelé algorithme.
Résolution informatique d’un problème

➢ Phase de traduction de l’algorithme

o Dans cette phase il s’agit de la mise en pratique de processus informatique de résolution par la

traduction de l’algorithme dans un langage compréhensible par l’ordinateur, appelé langage de

programmation.
Résolution informatique d’un problème

➢ Exemple d’analyse d’un problème

Problème :
Étant donnés le périmètre d’un rectangle et le pourcentage de sa largeur par rapport à sa longueur,
calculez sa surface.

Analyse :
Données connues :

le périmètre (P = 48).
le pourcentage de la largeur par rapport à la longueur (R = 1/3).
Résultat cherché : la surface (S) du rectangle
Résolution informatique d’un problème

➢ Exemple d’analyse d’un problème

Les étapes de calcule de la surface :

Au premier lieu cherchons la longueur (L) : P = 2 (L + l) = 2 (L+ L×R)


Donc L = P/ 2(1+R) = 18.

Au deuxième lieu cherchons la largeur (l) : l = R×L = 6

Au dernier lieu on calcule la surface (S) : S = L×l = 18×6 = 108


Notion d’algorithme

➢ Un algorithme doit :

• Etre simple à comprendre et à mettre en œuvre.

• Exécution rapide.
Notion d’algorithme

➢ La réalisation d’un algorithme est un acte créatif basé sur la logique.

➢ Un algorithme doit être fini et doit se terminer après un nombre fini d’opérations.

➢ Un même problème peut être résolu au moyen de plusieurs algorithmes.

➢ Les séquences se succèdent dans un certain ordre.

➢ Il est caractérisé par un début et une fin.

➢ 4 catégories d’instructions: L’affectation de variable, Lecture/Ecriture, les tests et les boucles


Notion d’algorithme
➢ Un algorithme =

• Description précise des opérations à faire pour résoudre un problème ( suite d’instructions).
• Procédure de calcul bien définie qui prends en entrée une valeur, ou un ensemble de valeurs et qui
donne en sortie une valeur, ou un ensemble de valeurs.
➢ Un bon algorithme =
• Un algorithme correct : i.e pour chaque instance en entrée, l’algorithme se termine en produisant la
bonne sortie.
➢ Savoir prouver un algorithme.
• Un algorithme efficace : mesure de la durée que met un algorithme pour produire un résultat.
➢ Savoir analyser la complexité d’un algorithme : i.e. détermination de l’espace mémoire et du temps
d’exécution nécessaire à la résolution du problème.
- Pour un problème donné, plusieurs algorithmes ou aucun sont possibles.
- Un algorithme se termine en un temps fini.
Pourquoi étudier l’algorithmique?

1. Développement de la pensée logique :

➢ L'algorithmique encourage le développement de la pensée logique et de la résolution de

problèmes.

➢ Ces compétences sont essentielles dans de nombreux domaines, y compris la gestion, où la prise

de décision basée sur la logique est cruciale.


Pourquoi étudier l’algorithmique?

2. Optimisation des processus métier:

➢ les algorithmes sont utilisés pour optimiser les processus métier, améliorer l'efficacité

opérationnelle et réduire les coûts.

➢ Comprendre comment concevoir et analyser des algorithmes peut aider à contribuer à l'efficacité

des entreprises.
Pourquoi étudier l’algorithmique?

3. Compréhension des technologies:

➢ De nombreuses technologies modernes, telles que les systèmes d'information, le big data et l'intelligence

artificielle, reposent sur des algorithmes.

➢ Comprendre les bases de l'algorithmique peut aider à mieux saisir ces concepts technologiques, même pour

les non informaticiens professionnels.


Pourquoi étudier l’algorithmique?

4. Développement de compétences analytiques :

➢ L'algorithmique nécessite une analyse approfondie des problèmes et la conception de solutions efficaces.

➢ Ces compétences analytiques peuvent être appliquées dans divers contextes professionnels, notamment

dans la prise de décision stratégique.


Pourquoi étudier l’algorithmique?

5. Facilitation de la collaboration interdisciplinaire:

➢ La compréhension de l'algorithmique peut favoriser la collaboration entre les professionnels des

technologies de l'information et ceux du domaine du commerce et de la gestion.

➢ Les projets interdisciplinaires peuvent bénéficier de la diversité des compétences.


Pourquoi étudier l’algorithmique?

6. Préparation aux défis futurs:

➢ Les entreprises d'aujourd'hui et de demain sont de plus en plus numériques.

➢ Des compétences algorithmiques va mieux vous à comprendre et à aborder les défis futurs liés à la

technologie.
Pourquoi étudier l’algorithmique?

➢ Importance de l’algorithmique pour les ENCGISTES

1. Développement de la pensée logique.

2. Optimisation des processus métier.

3. Compréhension des technologies.

4. Développement de compétences analytiques.

5. Facilitation de la collaboration interdisciplinaire.

6. Préparation aux futurs défis.


La représentation d’un algorithme

➢ On peut représenter un algorithme à l’aide d’un pseudo-code ou d’un organigramme.


➢ Un algorithme écrit en pseudo-code est composé de trois parties suivantes : L’en-tête, la partie déclarative
et le corps

L’en-tête
La partie déclarative

Début
Instructions Le corps
Fin
La représentation d’un algorithme

1. L’en-tête d’un algorithme

➢ L’en-tête est constitué du mot Algorithme, suivi d’un nom identifiant l’algorithme.
Exemple
✓ Algorithme Somme ;
✓ Algorithme Facture ;
La représentation d’un algorithme

2. La partie déclarative d’un algorithme

➢ La partie déclarative comprend une liste des variables et des constantes utilisés et manipulés dans
le corps de l’algorithme
a. Les données d’un algorithme

➢ Les données sont des informations nécessaires au déroulement d’un algorithme.

➢ On distingue deux catégories : les constantes et les variables.


La représentation d’un algorithme

2. La partie déclarative d’un algorithme

Types de données

Variable Constante

Une donnée qui change Une donnée fixe


La représentation d’un algorithme

2. La partie déclarative d’un algorithme

a. Les données d’un algorithme


➔ Les constantes
Une constante est une donnée fixe qui ne varie pas durant l’exécution d’un algorithme.
Une constante est caractérisée par son nom et sa valeur (fixe)
Syntaxe :
Constante Nom _Constante = valeur ;
Exemple :
Constante Pi =3,14
Constante B = 6
Constante Mois = 'Mars'
La représentation d’un algorithme

2. La partie déclarative d’un algorithme


a. Les données d’un algorithme
➔ Les variables
Une variable est un objet dont le contenu peut être modifié par une action durant l’exécution d’un
algorithme.
Une variable est caractérisée par son nom, sa valeur et son type..
Syntaxe :
Variable Nom_Variable : Type ;
Les types de données:
La représentation d’un algorithme

2. La partie déclarative d’un algorithme


a. Les données d’un algorithme
➔ Les variables
➢ Exemple:
Variable nb_élèves : entier ;
Variable note : réel ;
Variable Prénom : chaines de caractères ;
Variable A : booléen ;
Variable Opérateur : caractère ;
La représentation d’un algorithme

2. La partie déclarative d’un algorithme

Types de données

Variable Constante

Nom Type Valeur Nom Valeur

Entier Réel Caractère Chaine de caractère Booléen


La représentation d’un algorithme

Notion de données

➢ Les données sont des informations nécessaires au déroulement d’un algorithme. On distingue deux
catégories:

• Constante : Une donnée fixe qui ne varie pas durant l’exécution d’un algorithme.

• Variable : Une donnée dont le contenu peut être modifié par une action durant l’exécution d’un
algorithme.
La représentation d’un algorithme
Exercice
➢ Donnez le type des données suivantes:

Donnée Type
‘’ Bienvenue au Maroc ’’
-300
‘’ 8 ’’
2506.5
‘’ @ ’’
Vrai
‘’ Faux ’’
La représentation d’un algorithme
Exercice
➢ Donnez le type des données suivantes:

Donnée Type
‘’ Bienvenue au Maroc ’’ Chaine de caractères
-300 Entier
‘’ 8 ’’ Caractère
2506.5 Réel
‘’ @ ’’ Chaine de caractères
Vrai Booléen
‘’ Faux ’’ Chaine de caractères
La représentation d’un algorithme

Exercice
➢ Précisez le type, le nom et la valeur de chacune des données suivantes:

Ecole ENCGO Matière Notes Validé


Nom étudiant Ilham Informatique de Gestion 17 oui
N° 150
Analyse 18 Oui
Nombre 156
Gestion 17 Oui
étudiants
Sexe F Comptabilité 18 Oui

Moyenne 17,5
Mention Très bien
La représentation d’un algorithme

➢ Déclaration de variables et constantes

➢ La déclaration est une opération qui nous permet de mettre le programme au courant de l’existence d’une
donnée ( variable ou constante)

➢ L’objectif de la déclaration :
• Réserver un espace dans la mémoire de l’ordinateur ( mémoire vive de l’ordinateur = RAM).

• Cet espace sera utilisé soit pour stocker la valeur d’une donnée ou bien récupérer la valeur d’une donnée.

Exemple: Moyenne, nom étudiant, école, Num

• On réserve de la mémoire pour chacune des données.

• Les valeurs se stockent dans l’espace mémoire réservé.

• Je peux récupérer ces valeurs pour les utiliser dans mon algorithme.
La représentation d’un algorithme

➢ Déclaration d’une constante

➢ Une constante est caractérisée par son nom et sa valeur ( fixe).

➢ Syntaxe de déclaration:

Constante Nom_constante = valeur

➢ Exemples:

Constante Pi = 3.14
Constante nb_Mois = 12

Constante nom_ecole = ‘’ ENCGO ’’


La représentation d’un algorithme

➢ Déclaration d’une variable

➢ La variable est caractérisée par son nom, sa valeur et son type.

➢ Syntaxe de déclaration:

Variable Nom_Variable : type

➢ Exemples:

Variable Num_Etudiant : entier


Variable note : réel

Variable prénom : chaine de caractères

Variable admis : booléen

Variable opérateur : caractère


La représentation d’un algorithme

➢ Affectation

➢ L’affectation c’est donner une valeur à une variable.

➢ Syntaxe de déclaration:

Nom_Variable valeur

➢ Exemples:

Moyenne 14.94
Nom_etudiant ‘’ilham addarazi’’
Note_etudiant 13.21
La représentation d’un algorithme

➢ Affectation

➢ L’affectation est une opération qui consiste à attribuer à une variable .

• Soit une valeur particulière.

• Soit une valeur contenue dans une autre variable.

• Soit une valeur calculée à l’aide d’opérateurs arithmétiques

➢ Elle est représentée par une flèche orientée gauche


La représentation d’un algorithme

➢ Affectation

Nom_variable Valeur

➢ Exemples

A 2 La variable A reçoit la valeur 2

B A La variable B reçoit le contenu de A

C A+B La variable C reçoit le résultat de A + B

Nom ‘ilham’ La variable nom reçoit la chaine de caractère


La représentation d’un algorithme

➢ Affectation

Nom_variable Valeur

➢ Exemples

A 2 La variable A reçoit la valeur 2

B A La variable B reçoit le contenu de A

C A+B La variable C reçoit le résultat de A + B

Nom ‘ilham’ La variable nom reçoit la chaine de caractère


La représentation d’un algorithme

➢ Exercice : déclaration et affectation

Soient trois variables A, B et C tels que:

A est de type entier


B est de type chaine de caractères
C est de type logique

1. Comment on déclare les variables A, B et C dans ce cas?


La représentation d’un algorithme

➢ Exercice : déclaration et affectation

Variable A : entier

Variable B : chaine de caractère

Variable C : booléen
La représentation d’un algorithme

➢ Exercice : déclaration et affectation

Soient trois variables A, B et C tels que:

A est de type entier


B est de type chaine de caractères
C est de type logique

2. Cocher ce qui est juste:

A 1 B ‘’ Marrakesh’’

A ‘’Karl Marx ’’ C 10

B 3 C 2<5

B A C 1<-22
La représentation d’un algorithme

➢ Exercice : déclaration et affectation

Soient trois variables A, B et C tels que:

A est de type entier


B est de type chaine de caractères
C est de type logique

2. Cocher ce qui est juste:

A 1 B ‘’ Marrakesh’’

A ‘’Karl Marx ’’ C 10

B 3 C 2<5

B A C 1<-22
La représentation d’un algorithme

➢ Exercice : déclaration et affectation


Complétez le tableau suivant:

Instructions A B C D

B 2

C B+10

A 4

D A

B B*D

C B+5

A 10 + 4 + C

C A+B+D
La représentation d’un algorithme

➢ Exercice : déclaration et affectation


Complétez le tableau suivant:

Instructions A B C D

B 2 2

C B+10 2 12

A 4 4 2 12

D A 4 2 12 4

B B*D 4 8 12 4

C B+5 4 8 13 4

A 10 + 4 + C 27 8 13 4

C A+B+D 27 8 39 4
La représentation d’un algorithme

➢ On a dit que l’algorithme sert à résoudre les problématiques.

➢ Supposons que nous sommes sensé de résoudre une problématique de somme.

➢ L’utilisateur aura besoin d’une application qui ressemble un petit peu à ca:

Programme qui calcule la somme:

Veuillez entrer la valeur de A: 38

Veuillez entrer la valeur de B: 6

La somme est : 44
La représentation d’un algorithme

Problématique ?

➢ Comment écrire un message?

➢ Comment lire quelque chose dite par l’utilisateur?


La représentation d’un algorithme

1. Comment la machine communique avec l’utilisateur?

Avec des périphériques de sortie: ( écran, imprimante etc..)

2. Comment le programme communique avec l’utilisateur?

Instruction : Ecrire
La représentation d’un algorithme

Ecrire : ( Opération de sortie )

L’instruction écrire permet d’afficher la valeur d’une expression sur un périphérique de sortie ( écran) ( le
programme communique avec l’utilisateur) .

Une expression peut être :

▪ Un nombre,

▪ Une variable numérique,

▪ Un résultat d’une opération entre plusieurs variables,

▪ Une chaine de caractère, dans ce cas , il est nécessaire de mettre une chaine de caractère
entre deux apostrophes.
La représentation d’un algorithme

Ecrire : ( Opération de sortie )

Syntaxe:
Ecrire ( variable)
Ecrire ( ‘’ message ‘’)
Ecrire ( ‘’message’’,variable)

Exemples:

Ecrire ( A ) Signifie affiché sur l’écran le contenu de la variable A

Ecrire ( ‘’ Maroc ‘’) Signifie affiché sur l’écran le message suivant : « Maroc »

Ecrire ( ‘’ A = ’’, A) Signifie affiché sur l’écran le message suivant : A = puis le


contenu de la variable A
La représentation d’un algorithme

1. Comment l’utilisateur communique avec la machine?

Avec des périphériques d’entrée ( clavier, souris ..)

2. Comment l’utilisateur communique avec le programme?

Instruction lire
La représentation d’un algorithme

Lire : ( Opération d’entrée )

L’instruction lire permet de demander à l’utilisateur de fournir des informations. Chaque information de données
est stockée dans une variable ( attention au type)

Syntaxe:
Lire ( variable1)
Lire (variable1, variable2 …)
La représentation d’un algorithme

Lire : ( Opération d’entrée )

Exemple:

Lire ( x ) Demander à l’utilisateur la valeur de x

Lire (nom, prénom, âge) Demander le nom, le prénom et l'âge

Remarque:

Lors de l’execution de l’instruction Lire la machine attend que l’utilisateur lui fournisse une valeur afin
de continuer à exécuter l’algorithme
La représentation d’un algorithme

Exercice:

Soient X , Y et Z trois variables:

X 150
Y 100
Z ‘’DH ‘’

Qu’affichent les instructions suivantes:


La représentation d’un algorithme

Exercice:

Soient X , Y et Z trois variables:

X 150
Y 100
Z ‘’DH ‘’

Qu’affichent les instructions suivantes:

Instructions Résultats
Ecrire ( ‘’Hello World ! ‘’)
Ecrire ( X )
Ecrire (‘’ Z ‘’)
Ecrire ( X * 2 )
Ecrire ( ‘’Prix : ’’X+Y , Z)
La représentation d’un algorithme

Exercice:

Soient X , Y et Z trois variables:

X 150
Y 100
Z ‘’DH ‘’

Qu’affichent les instructions suivantes:

Instructions Résultats
Ecrire ( ‘’Hello World ! ‘’) Hello World !
Ecrire ( X ) 150
Ecrire (‘’ Z ‘’) Z
Ecrire ( X * 2 ) 300
Ecrire ( ‘’Prix : ’’X+Y , Z) Prix : 250DH
La représentation d’un algorithme

Exercice: ( Ecrire et Lire )

Nous voulons un algorithme qui calcule l’air d’un cercle:

1- Donner les instructions de déclaration


2- Donner les instructions qui demandent à l’utilisateur de taper les valeurs de données
3- Donner les instructions de traitements
4- Donner les instructions qui permettent d’afficher le résultat.
La représentation d’un algorithme

Exercice: ( Ecrire et Lire )

Nous voulons un algorithme qui calcule l’air d’un cercle:

1- Donner les instructions de déclaration


2- Donner les instructions qui demandent à l’utilisateur de taper les valeurs de données
3- Donner les instructions de traitements
4- Donner les instructions qui permettent d’afficher le résultat.

Variable Rayon, air : réel


Constante Pi = 3.14
Ecrire ( ‘’ Veuillez entrer la valeur du rayon du cercle :’’)
Lire(Rayon)
air Rayon * Rayon * Pi
Ecrire ( ‘’ l’air du cercle est : ‘’ ; Surface)
La représentation d’un algorithme

3. Le corps d’un algorithme


b.. Expressions et opérateurs
i. Expression
Une expression est un ensemble de valeurs reliées par des opérateurs, et équivalent à une seule
valeur.
Exemple : 4+2, 5*6, 4<9, A>6, C+B,…

ii. Opérateur
Un opérateur est un signe qui relie deux valeurs, pour produire un résultat.
Exemple : +, -, *, / , ^, <, et, non, ou,…
Concevoir un algorithme

➢ Pour concevoir un algorithme, il faut suivre les étapes suivantes :

Etape1: Lire et comprendre bien l’énoncé du problème à résoudre

Etape 2:

• Définir les résultats du problème (les sorties) ;

• Définir les données du problème (les entrées) ;

• Définir le traitement (les relations permettant d’obtenir les résultats à partir des données) ;.

Etape 3: Ecrire l’algorithme en respectant la structure pseudo-code


Structure d’un algorithme

Algorithme Nom_Algorithme En-tête de l’algorithme

Variable
Nom_Variable : Type Bloc de déclaration de données

Constante
Nom_Constante = valeur

Debut
-
- Bloc d’instructions
-
-

Fin
Structure d’un algorithme

Exercice :

➢ Ecrire un algorithme qui demande à l’utilisateur de taper la quantité de produits vendus, le prix de vente
et qui calcule le chiffre d’affaire de l’entreprise.
Structure d’un algorithme

Exercice :

➢ Ecrire un algorithme qui demande à l’utilisateur de taper la quantité de produits vendus, le prix de vente
et qui calcule le chiffre d'affaires de l’entreprise.

Programme qui calcule le chiffre d’affaires

Veuillez calculer la quantité des produits vendus : 15

Veuillez entrer le prix de vente : 4

Le chiffre d’affaire de l’entreprise est : 60


Structure d’un algorithme

➢ Quelles sont les données ?

➢ Quelles sont les instructions utilisées

➢ Que dois je afficher à la fin ?


Structure d’un algorithme

Produits_vendus Prix_de_vente

Algorithme

Chiffre d’affaire
Structure d’un algorithme

4 15

Algorithme

60
Structure d’un algorithme

Solution:

Algorithme chiffres_Affaires
Variable
produits_vendus : Entier
prix_vente , CA : Réel
Début
Ecrire (‘’Veuillez entrer la quantité de produits vendus :‘’)
Lire ( produit_vendus)
Ecrire ( ‘’Veuillez entrer le prix de vente :’’)
Lire(prix_vente)
CA  produits_vendus* prix_vente
Ecrire ( ‘’Le chiffre d’affaire de l’entreprise est :’’, CA)
Fin
Commentaire

➢ Les commentaires est un texte ajouté à un algorithme ou un programme afin de clarifier


ce dernier et le rendre compréhensif..

➢ Accentuer la lisibilité

➢ La machine ne traire pas les commentaires.

➢ Encadré par ‘ % ‘
Commentaire

➢ Exemple:

% Déclaration de la variable pays %

Variable pays : chaine de caractère

% Affectation de la variable Maroc à la variable pays %

Pays  ‘’ Maroc ‘’
Expression arithmétique

➢ Contient les opérateurs arithmétiques.

➢ Peut contenir des variables, des constantes, des valeurs et des parenthèses.
Expression arithmétique

Signe d’affectation valeur Variables ou constantes

Z ( 20 + X ) * Y

Opérateurs arithmétiques

➢ Une expression ( située à droite de la flèche ) est un ensemble de valeurs, reliées par des opérateurs,
et équivalent à une seule valeur.

➢ Une expression arithmétique est formée par des combinaisons d’objets numériques ( entier et réel) et
des opérateurs arithmétiques.

➢ Une expression arithmétique donne un résultat numérique dont le type est entier ou réel.
Expression arithmétique

➢ Opérateurs de division

A 10 / 6 Division
10 6
1.66

Division euclidienne
10 6 B 10 div 6
4 1

C 10 mod 6 Reste

D 10 ^ 6 La puissance
Expression arithmétique

➢ Les opérateurs arithmétiques sont:

Opérateur Signification

+,- Addition, Soustraction

*,/ Multiplication, Division

div Division entière

mod Reste de la division entière

^ puissance
Expression arithmétique
➢ Exercice

Instruction Résultat

A 4^2

B 8*5

N A+B

P N - 20

R B/3

X B mod 3

Y B div 3
Expression arithmétique
➢ Exercice

Instruction Résultat

A 4^2 16
B 8*5 40
N A+B 56
P N - 20 36
R B/3 13.33
X B mod 3 1
Y B div 3 13
Expression arithmétique
➢ Exercice

Donnez les valeurs des variables après l’éxecution de chaque instruction

Instruction Résultat

C ‘’ Face ‘’

D ‘’ book ‘’

E C+D
Expression arithmétique
➢ Exercice

Donnez les valeurs des variables après l’éxecution de chaque instruction

Instruction Résultat

C ‘’ Face ‘’ Face

D ‘’ book ‘’ Book

E C+D Facebook
Expression de comparaison

➢ Elle est une expression entre deux expressions arithmétiques. Une expression arithmétique donne un
résultat booléen ( vrai ou faux) .

➢ Les opérateurs de comparaison usuels sont : >, =, <, >=,<=,<>


Expression de comparaison

Variable logique Opérateur de comparaison

C 3 * A /7 <= 18 * B

Expression Expression
arithmétique arithmétique
Expression de comparaison

➢ Donner les valeurs des variables après l’exécution de chaque instruction

Instructions Résultat

F 3<5

G 2 <> 4

H 1>8

X 4+5

K ( X mod 3 ) = ( X – 8)

J ( X * 10 ) >= 90

M ( X * X + X) < ( X ^3)
Expression de comparaison

➢ Donner les valeurs des variables après l’exécution de chaque instruction

Instructions Résultat

F 3<5 Vrai

G 2 <> 4 Vrai

H 1>8 Faux

X 4+5 9

Faux
K ( X mod 3 ) = ( X – 8)

J ( X * 10 ) >= 90 Vrai

M ( X * X + X) < ( X ^3) vrai


Expression logique

➢ Une expression logique est la composée de comparaisons par opérateurs logiques.

➢ Une expression logique donne un résultat booléen ( vrai ou faux).

➢ Les opérateurs logiques usuels sont : et ou , non


Expression logique

Variable logique Opérateur logique

C A<B et 2+B=8

Expression de Expression de
comparaison comparaison
Expression logique

➢ Soit A et B deux variables booléennes. Le tableau suivant illustre les différentes valeurs de vérité que l’on obtient
en combinant les valeurs de A et B à l’aide des opérateurs logiques.

A B A et B A ou B Non A
Faux Faux Faux Faux Vrai

Faux Vrai Faux Vrai Vrai

Vrai Faux Faux Vrai Faux

Vrai Vrai Vrai Vrai Faux


Expression logique

➢ Exemples

Instruction Résultat
A 5

B 6

C ( A < B) Et ( 3 > B)

D ( A = 5 ) Ou ( B > 10)

E Non ( C )
F C Ou ( E Et D )
G ( Non ( E ) Et F ) Ou ( C Et D)
Expression logique

➢ Exemples

Instruction Résultat
A 5 5

B 6 6

C ( A < B) Et ( 3 > B) Faux

D ( A = 5 ) Ou ( B > 10) Vrai

E Non ( C ) Vrai

F C Ou ( E Et D ) Vrai

G ( Non ( E ) Et F ) Ou ( C Et D) Faux
Expression logique

➢ Exercice

Instruction Résultat
A Non ( 3 = 5 )

A ( 2 <> 2 ) Ou ( 3 > 4 )

A ( (30 / 3 ) = 10 ) Et ( 3 >30)

A ( (2 > 4 ) Et ( 8 <= 8 ) ) Ou ( 3 <> 4)

A ( 40 > = 30 ) Et ( ( 10 ^ 2 ) <> 50 )

A Non ( ( 82 mod 8 ) / 2 = 1 )
Expression logique

➢ Exercice

Instruction Résultat
A Non ( 3 = 5 ) Vrai

A ( 2 <> 2 ) Ou ( 3 > 4 ) Faux

A ( (30 / 3 ) = 10 ) Et ( 3 >30) Faux

A ( (2 > 4 ) Et ( 8 <= 8 ) ) Ou ( 3 <> 4) Vrai

A ( 40 > = 30 ) Et ( ( 10 ^ 2 ) <> 50 ) Vrai

A Non ( ( 82 mod 8 ) / 2 = 1 ) Faux


Instructions conditionnelles

➢ Exercice

➢ Ecrire un programme qui demande à l’utilisateur de rentrer deux nombres et affiche le résultat de leur
division.
Instructions séquentielles

➢ Exercice

Algorithme division
Variables
A, B: Réel
Début
Ecrire("Veuillez entrer le premier nombre")
Lire ( A )
Ecrire("Veuillez entrer le deuxième nombre")
Lire ( B )
Ecrire ("Le résultat : ", A/B)
Fin

➢ Problématique: L’utilisateur peut entrer une valeur nulle pour le dénominateur


Instructions séquentielles

La structure séquentielle:

➢ Un algorithme qui suit une structure séquentielle est un algorithme dont toutes les instructions sont

exécutées l’une après l’autre de façon à ce que l’ordre des instructions est respecté.
Instructions conditionnelles

La structure conditionnelle:

La structure conditionnelle est une structure dont les instructions sont exécutées selon les réponses des

conditions.
1. Structure conditionnelle simple ( un choix) :

Syntaxe:

Si Condition Alors
Instructions
Fin Si

Si la condition vaut vrai, alors le bloc d’instructions sera exécuté sinon il sera ignoré.
Instructions conditionnelles

La structure conditionnelle:

Algorithme division
Variables
A, B: Réel
Début
Ecrire("Veuillez entrer le premier nombre")
Lire ( A )
Ecrire("Veuillez entrer le deuxième nombre")
Lire ( B )

Si B <> 0 Alors

Ecrire ("Le resultat est : ", A/B)

Fin Si
Fin
Instructions conditionnelles

Exercice

➢ Ecrire un algorithme qui permet de définir le maximum de deux nombres réels saisi par l’utilisateur en

utilisant 3 variables.
Instructions conditionnelles

Exercice

Algorithme Maximum
Variables
A, B, Max: Réel
Début
Ecrire("Veuillez entrer les valeurs de A et B")
Lire ( A, B)
Max A
Si Max<B Alors

Max B

Fin Si
Ecrire("Le maximum est égale à ", Max)
Fin
Instructions conditionnelle

La structure conditionnelle:

2. Structure alternative ( deux choix) :

Syntaxe:

Si Condition Alors
Instructions_1
Sinon
Instructions_2
Fin Si

Si la condition vaut vrai, alors le bloc d’instructions 1 sera exécuté et le bloc d’instruction 2 sera ignoré,
sinon le bloc d’instructions 2 sera exécuté et le bloc d’instructions 1 sera ignoré.
Instructions conditionnelles

La structure conditionnelle:
Algorithme division
Variables
A, B: Réel
Début
Ecrire("Veuillez entrer le premier nombre")
Lire ( A )
Ecrire("Veuillez entrer le deuxième nombre")
Lire ( B )

Si B <> 0 Alors

Ecrire ("Le resultat est : ", A/B)

Sinon

Ecrire ("La division par 0 est impossible ")

Fin Si
Fin
Instructions conditionnelles

Exercice

➢ Ecrire un algorithme qui permet de demander à un utilisateur un nombre entier puis affiche si le nombre est
positif ou négatif
Instructions conditionnelles

Exercice
Algorithme nature_Nombre

Variables
n: Entier
Début
Ecrire("Programme qui détermine la nature d'un nombre")
Ecrire("Veuillez entrer un nombre")
Lire (n)
Si n>0 Alors
Ecrire("Ce nombre est positif")
Sinon
Ecrire("Ce nombre est négatif ")
Fin si
Fin
Instructions conditionnelles

La structure conditionnelle:

3. Structure alternative imbriquée ( multiple choix):

Syntaxe:
Si Condition_1 Alors
Instructions_1
Sinon Si Condition_2 Alors
Instructions_2
Sinon
Instructions
Fin Si
Instructions conditionnelles
Exercice Algorithme nature_Nombre

Variables
n: Entier
Début
Ecrire("Programme qui détermine la nature d'un nombre")
Ecrire("Veuillez entrer un nombre")
Lire (n)
Si n>0 Alors
Ecrire("Ce nombre est positif")
Sinon
Si n = 0 Alors
Ecrire("Ce nombre est nul ")
Sinon
Ecrire("Ce nombre est négatif ")
Fin Si
Fin si
Fin
Instructions conditionnelles
Exercice

Ecrire un algorithme qui permet de lire la valeur de la température de l’eau et affiche son état :

• GLACE Si la température est inférieure à 0

• LIQUIDE si la température est strictement supérieure à 0 et strictement inférieure à 100

• VAPEUR si la température est supérieure à 100


Instructions conditionnelles
Exercice

Algorithme état_Eau
Variables
T: Réel
Début
Ecrire("Veuillez entrer la température")
Lire (T)
Si T<=0 Alors
Ecrire("L'etat de l'eau est GLACE")
Sinon
Si T >= 100 Alors
Ecrire ("L'etat de l'eau est VAPEUR")
Sinon
Ecrire ("L'etat de l'eau est LIQUIDE")
Fin si
Fin si
Fin
Instructions conditionnelles
Exercice

➢ Un vendeur souhaite faire un programme qui affiche le prix de chaque légume existant dans

magasin, sinon il affiche que le légume n’existe pas.


Instructions conditionnelles

La structure conditionnelle:

4. Structure à choix multiple

Lorsque l’imbrication des alternatives devient importante, l’utilisation de la structure à choix multiple devient
nécessaire.
Instructions conditionnelles
Exercice

➢ Un vendeur souhaite faire un programme qui affiche le prix de chaque légume existant dans
magasin, sinon il affiche que le légume n’existe pas.

Cas Variable Vaut


Valeur 1 : Instructions_1
Valeur 2 : Instructions_1
……… : …;
Valeur n : Instructions_1
Sinon
Autre instruction
Fin Cas
Instructions conditionnelle
Syntaxe

Algorithme prix_aliment
Variables
A: chaine de caractère
Début
Ecrire("Veuillez entrer un aliment")
Lire (A)
Cas A vaut
"Banane":Ecrire("Le prix d'un Kg de cet aliment est : 9DH")
"Pomme ":Ecrire("Le prix d'un Kg de cet aliment est : 8DH")
"Avocat":Ecrire("Le prix d'un Kg de cet aliment est : 22DH")
"Oignon":Ecrire("Le prix d'un Kg de cet aliment est : 4DH")
"Tomate":Ecrire("Le prix d'un Kg de cet aliment est : 3DH")
"Carrote":Ecrire("Le prix d'un Kg de cet aliment est : 9DH")
Sinon: Ecrire ("Aliment n'existe pas")
Fin Cas
Fin
Instructions conditionnelle
Exercice

Ecrire un algorithme qui permet de demander à l’utilisateur de saisir un entier entre 1 et 7 au clavier, et
affiche le nom du jour correspondant.
Instructions conditionnelle
Exercice
Algorithme jour_semaine
Variables
n: Entier
Début
Ecrire("Veuillez entrer un nombre entre 1 et 7")
Lire (n)
Cas n vaut
1:Ecrire("Lundi")
2:Ecrire("Mardi")
3:Ecrire("Mercredi")
4:Ecrire("Jeudi")
5:Ecrire("Vendredi")
6:Ecrire("Samedi")
7:Ecrire("Dimanche")
Sinon: Ecrire ("Le nombre est incorrect")
Fin Cas
Fin
Structures répétitives

Problématique:

➢ Un élève veut calculer la table de multiplication.

But:

➢ Un programme qui affiche la table de multiplication de 7 allant de 0 à 10 .

Exercice :

➢ Ecrire un programme avec les notions que nous avons vu jusqu’à maintenant dans les cours permettant de
résoudre cette problématique.
Structures répétitives

Algorithme table_7
Variables
M: Entier
Début
M <-- 0*7
Ecrire("0*7=",M)
M <-- 1*7
Ecrire("1*7=",M)
M <-- 2*7
Ecrire("2*7=",M)
....
Ecrire("10*7=",M)
Fin
Structures répétitives

➢ La structure répétitive ( Boucle) permet d’exécuter plusieurs fois une séquence d’instructions.

➢ Dans une boucle, le nombre de répétitions peut être connu, fixé à l’avance, comme il peut dépendre

d’une condition permettant l’arrêt de la sortie de cette boucle.


Structures répétitives

Le nombre de
répétition peut être Boucle Pour
connu

Le nombre de Boucle Tant que


répétition dépend
d’une condition Boucle Répéter …jusqu’à
Structures répétitives

Le nombre de
répétition peut être Boucle Pour
connu
Structures répétitives

1. La boucle Pour

Cette boucle permet d’exécuter une séquence d’instructions un nombre de fois connu fixé à l’avance. Elle

utilise une variable (indice) de contrôle d’itérations caractérisée par:

❖ Sa valeur initiale,

❖ Sa valeur finale,

❖ Son pas de variation.


Structures répétitives

1. La boucle Pour

Syntaxe:

Pour I  N à M pas 1 Faire I : Variable


Instructions N : Valeur initiale
M: Valeur finale
Fin Pour Le pas de variation égale à 1.
Structures répétitives

1. La boucle Pour

Algorithme table_7
Variables
M, I : Entier
Début
Pour I<--- 0 à 10 pas 1 Faire
M<--- I * 7
Ecrire (I, "*7=",M)

Fin Pour

Fin
Structures répétitives

Exercice :

Ecrire un programme qui permet de calculer la somme des 20 premiers entiers positifs.
Structures répétitives

Algorithme Somme
Variables
S, I : Entier
Début
S<-- 0
Pour I<--- 1 à 20 pas 1 Faire
S<--- S + I
Fin Pour
Fin
Structures répétitives

Problematique:

Calculer la table de multiplication d’un nombre x. x doit être compris entre 1 et 10.
Structures répétitives

2. La boucle Tant que

➢ Cette boucle permet de répéter un bloc d’instructions tant qu’une condition est vraie.

Syntaxe:
Tant que Condition faire
instructions
Fin Tant que

➢ La vérification de la condition d’effectue avant l’exécution des instructions. Celles-ci peuvent ne


jamais être exécutés.
Structures répétitives

2. La boucle Tant que


Algorithme table_multiplication
Variables
M, N, I : Entier
Début
Ecrire ("Entrez un nombre entre 1 et 10:")
Lire(N)
Tant que N<1 ou N>10 faire
Ecrire("Entrez un nombre entre 1 et 10:")
Lire(N)
Fin Tant que
Pour I  0 à 10 pas 1 faire
M  I*N
Ecrire(I,"*",N,"=",M)
Fin Pour
Fin
Structures répétitives

2. La boucle Tant que

Exercice

Ecrire un algorithme qui demande un nombre compris entre 10 et 20, jusqu’à ce que la réponse

convienne. En cas de réponse supérieure à 20, on fera apparaitre un message : « Plus grand !» et

inversement, « Plus petit !» si le nombre est inférieur à 10.


Structures répétitives

2. La boucle Tant que


Algorithme nombre
Variables
n : Entier
Début
Ecrire ("Entrez un nombre entre 10 et 20:")
Lire(n)
Tant que n<10 ou n>20 faire
si n < 10 alors
Ecrire("Plus petit!")

Sinon
Ecrire("Plus grand!")
Fin si
Ecrire("Entrez un nombre entre 10 et 20")
Lire(n)
Fin tant que
Ecrire ("Bravo vous avez un nombre entre 10 et 20:")
Fin
Structures répétitives

3. La boucle Jusqu’a

Le nombre de
répétition peut être Boucle Pour
connu

Le nombre de Boucle Tant que


répétition dépend
d’une condition Boucle Répéter …jusqu’à
Structures répétitives

3. La boucle Répéter… Jusqu’à….

➢ Cette boucle permet de répéter un bloc d’instructions jusqu’à ce qu’une condition soit vérifiée.

Syntaxe:
Répéter
Instructions
Jusqu’à Condition

➢ La vérification de la condition s’effectue après l’exécution des instructions. Celles-ci sont donc

exécutés au moins une fois.


Structures répétitives

3. La boucle Répéter… Jusqu’à….

Algorithme table_multiplication
Variables
M, N, I : Entier
Début
Répéter
Ecrire ("Entrez un nombre entre 1 et 10: ")
Lire(N)
Jusqu'a N > 0 et N <= 10
Pour I <-- 0 à 10 pas 1 Faire
M<-- I*N
Ecrire (I,"*",N,"=",M)
Fin Pour
Fin
Structures répétitives

➢ La boucle Pour est utilisé lorsqu’on connait à l’avance le nombre de répétitions ( nombre
d’itérations).

➢ Les boucles Tant que et Répéter sont utilisées lorsqu’on ne connait pas à l’avance le nombre de
répétitions (nombre d’itérations).
Structures répétitives - récapitulatif

➢ Tant que

Faux
Condition

Vrai

Instruction
Structures répétitives - récapitulatif

➢ Pour

Faux
Condition
Modification
de compteur

Instruction
Structures répétitives - récapitulatif

➢ Répéter jusqu’a

Instruction

Vrai
Condition
Les tableaux

Problématique:

Supposons qu’un professeur veut effectuer plusieurs opérations sur les notes des étudiants.

➢ Stocker les notes


➢ Calculer la moyenne
➢ Le majorant
➢ Le minorant

Comment appliquer ces opérations sur 400 étudiants.?


Les tableaux

1. Déclarer un tableau

2. Accéder à un élément

3. Afficher les éléments

4. Remplir un tableau
Les tableaux

1. Déclarer un tableau

Syntaxe:
Tableau nom_tab ( Taille) : Type

nom_tab

0 1 2 … Taille-1

Déclaration de la variable
N de l’algorithme note: Tableau N ( 318) : Réel

N
0 1 2 … 317
Les tableaux

2. Accéder aux éléments d’un tableau

Syntaxe d’affectation: nom_tab ( indice) Valeur

Syntaxe lecture: Lire ( nom_tab ( indice ))

Syntaxe écriture: Ecrire ( nom_tab ( indice ))


Les tableaux

2. Accéder aux éléments d’un tableau

➢ Affectation de la note 12 à l’étudiant num_1:

N(0) 12

0 1 2 … 317
Les tableaux

2. Accéder aux éléments d’un tableau

➢ Utilisation de la lecture de la note de l’étudiant num_3

Lire ( N ( 2 ) )

N 12 6 10
0 1 2 … 317
Les tableaux

2. Accéder aux éléments d’un tableau

➢ Affichage de la note de du dernier étudiant dans la liste

Ecrire ( N (317) )

N 12 6 10 17
0 1 2 … 317
Les tableaux

I - Définition

Un tableau est une suite d’éléments de même type. Il utilise plusieurs cases mémoires à l’aide d’un

seul nom. Comme toutes les cases portent le même nom, elles se différencient par un indice.
Les tableaux

II – Déclaration d’un tableau

Syntaxe : Tableau nom_tab ( Taille) : Type

Exemple: Déclaration d’un tableau nommé T composé de 5 éléments entier

Tableau T ( 5 ) : Entier

Le tableau est représenté schématiquement dans la mémoire comme suit:

T
0 1 2 3 4
Nom du tableau
Indice de l’élément 3
Les tableaux

III– Remplir un tableau

Pour i =0à4 pas 1


Syntaxe d’affectation: nom_tab ( indice) Valeur

Exemple: Affectation des valeurs aux éléments du tableau T S=S+T(i)


T(0) 6 // 6 =0+6
T(1) T(0) - 2 // 10= 6+4
T(2) T(0) * T(1) // 34=10+24
T(3) 20 // 54= 34+20
T(4) T(0) + T(1) + T(2) + T (3)
// 87 =54+33

T 6 4 24 20 33
0 1 2 3 4
Les tableaux

III– Remplir un tableau

Syntaxe de lecture: Lire (nom_tab ( indice) )

Exemple: Remplissage de tous éléments du tableau avec l’instruction Lire

Pour i 0 à 4 pas 1 Faire

Lire (T ( i ) )

Fin pour
Les tableaux

III– Afficher les éléments du tableau

Syntaxe d’ecriture: Ecrire (nom_tab ( indice) )

Exemple: Affichage des valeurs de tous les éléments du tableau T :

Pour i 0 à 4 pas 1 Faire

Ecrire("L'élément", i + 1 ,"du tableau T est : ", T(i) )

Fin pour
Les tableaux

Exercice

➢ Ecrire un algorithme permettant de calculer la moyenne de 318 étudiants.


Les tableaux

Exercice
Algorithme moyenne_note
Variables
Tableau N ( 318 ) : réel
M , S : réel
i : entier
Début
Pour i <-- 0 à 317 pas 1 faire
Ecrire (" Donner la note de l'étudiant num :", i+1 , ":")
Lire ( N ( i ) )
fin Pour
S <-- 0
Pour i <-- 0 à 317 pas 1 faire
S <-- S + N ( i )

fin Pour
M <-- S / 318
Ecrire (" La moyenne des notes est :" , M)
Fin
Pseudo_code Vs Organigramme
Début

C’est quoi la valeur de A

Valeur de A récupérée

C’est quoi la valeur de B

Valeur de B récupérée

non oui
B = 0?
C  A/B Opération invalide

Afficher la valeur de C

Fin

Vous aimerez peut-être aussi