0% ont trouvé ce document utile (0 vote)
33 vues15 pages

Cours Algorithmique8

Le document traite de l'algorithmique et de la programmation, en définissant les algorithmes comme des suites d'instructions pour résoudre des problèmes. Il couvre les notions de données, les variables, les constantes, ainsi que les structures de contrôle et les instructions de base en programmation. Des exemples pratiques illustrent la conception et l'exécution d'algorithmes, ainsi que l'utilisation d'organigrammes pour représenter des processus.

Transféré par

katakito
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
0% ont trouvé ce document utile (0 vote)
33 vues15 pages

Cours Algorithmique8

Le document traite de l'algorithmique et de la programmation, en définissant les algorithmes comme des suites d'instructions pour résoudre des problèmes. Il couvre les notions de données, les variables, les constantes, ainsi que les structures de contrôle et les instructions de base en programmation. Des exemples pratiques illustrent la conception et l'exécution d'algorithmes, ainsi que l'utilisation d'organigrammes pour représenter des processus.

Transféré par

katakito
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

ALGORITHMIQUE ET PROGRAMMATION

Module N°3 : Algorithmique et programmation


I. Notion d’algorithme
II. Instructions de base
III. Structures de contrôle de base
IV. Langages de programmation

I. Notion d’algorithme :
1. Définition d’un algorithme
 Activité 1 :
Tu as décidé de te balader à travers la forêt, dont le schéma est présenté ci-dessous.

Quel itinéraire est-il recommandé de choisir parmi ceux présentés ci-dessous ?

 Activité 2 :
Donnez les séquences de lettres représentant le chemin le plus court à suivre pour trouver le trésor caché
dans le labyrinthe.

1
ALGORITHMIQUE ET PROGRAMMATION

Définition (1) :

Un algorithme est une suite finie d'actions ou d’instructions qui doivent être exécutées
dans un ordre déterminé pour résoudre un problème (ou réaliser un travail).

2. Application en informatique

La méthode informatique de résolution d’un problème peut être représentée par le schéma suivant :

La démarche algorithmique consiste sur les étapes suivantes :

❖ Phase d’analyse : dans cette phase, il faut dégager les trois composantes :
Les données à fournir (Entrées)
Les résultats cherchés, (Sorties)
Les traitements nécessaires à effectuer.
Les traitements
(Entrées) (Sorties)
Algorithme

❖ Phase conception (algorithme) : cette phase sert à organiser les traitements définis en phase
précédente dans l'ordre convenable pour aboutir aux résultats attendus. En d’autres termes écrire
l'algorithme nécessaire.
Exemple :
A la fin de chaque mois, un comptable doit calculer les salaires de 150 personnes en faisant la somme
du salaire du mois précèdent de chaque personne et de ses primes. Supposons que le comptable,
ajoute à la fin de chaque mois une prime de transport de valeur 500 dhs.
Phase d’analyse :
 Entrées : salaire du mois précèdent, primes et prime de transport
 Sorties : salaires
 Les traitements : salaires= salaire du mois précèdent + primes + prime de transport

2
ALGORITHMIQUE ET PROGRAMMATION

Phase d’analyse :
 Données :
- Salaire du mois précèdent (SMP)
- Primes du mois courant (PMC)
- Prime de transport = 500 (PT)
 Résultat :
- Salaire du mois courant (SMC)
 Traitement :
- Salaire du mois courant = Salaire du mois précèdent + Primes du mois courant
+ Prime de transport

SMC = SMP + PMC + PT

Variables SMP, PMC, SMC : réels


Constante PT=500

II. Notion de données


Les algorithmes agissent sur les données qui peuvent variées ou restées constantes.
1. Les variables

Une variable est le nom d’un espace mémoire dont le contenu peut changer pendant l’exécution d'un
Une variable est caractérisée par :
algorithme.
 Son identificateur (nom): c'est un nom symbolique représentant la donnée dans l’algorithme. Il est
représenté par une chaîne alphanumérique où le 1er caractère est une lettre et les autres caractères peuvent
être des lettres, des chiffres ou tiret bas ‘_’. Chaque fois que c'est possible, ce nom doit être significatif.
Exemples : nb_eleves, note, prenom, salaire, prime…
 Sa valeur : La variable contient une valeur qui peut être modifiée ou affectée pendant l'exécution.
 Son type : l'ensemble de valeur que peut prendre une donnée (Entier, Réel, Caractère, Chaîne de caractères,
Booléen, …)

Entier Réel Caractère Chaîne de caractères Booléen


(logique)
-345 -123,56 'A' '@'
"Lydex-SE", Vrai
145 33,1 '2' '.'"3872" Faux
2023 56,12 '+' '$'
"Bonjour"
"Quel âge as-tu ?"
 Déclaration : Variable Nom_Variable, nom_var2 : Type

3
ALGORITHMIQUE ET PROGRAMMATION

Variable note, moyenne : Réel


prenom : Chaîne de caractères

x=2 y=4
z=x+y z=6
s=’2’ t=’4’
q= s+t q= ‘24’

concaténation

2. Les constantes

Une constante est le nom d’un espace mémoire dont le contenu ne change jamais. Contrairement à
une variable, la constante garde la même valeur pour un algorithme.

 Déclaration : Constante Nom_ Constante = Valeur


 Exemple : Constante PI = 3,14

III. La Structure d’un algorithme


Un algorithme est composé de trois parties principales (figure
L’en-tête : cette partie sert à donner
ci-dessous) :
un nom à l’algorithme. Elle est
précédée par le mot Algorithme.

La partie déclarative : dans cette


partie, on déclare les différents objets
que l’algorithme utilise (constantes,
variables, etc.)

Le corps de l’algorithme : cette partie


contient les instructions de
l’algorithme. Elle est délimitée par les
mots : Début et Fin.

Exemple :

4
ALGORITHMIQUE ET PROGRAMMATION

Phase d’analyse :
 Données :
- Salaire du mois précèdent (SMP)
- Primes du mois courant (PMC)
- Prime de transport = 500 (PT)
 Résultat :
- Salaire du mois courant (SMC)
 Traitement :
- Salaire du mois courant = Salaire du mois précèdent + Primes du mois courant
+ Prime de transport

SMC = SMP + PMC + PT

Phase de conception :

Algorithme calcul_salaire

Variables SMP, PMC, SMC : réels


Constante PT= 500

Début
Lire (SMP, PMC)
La lecture des données d’entrées.

SMC ← SMP + PMC + PT Les traitements

L’affichage des résultats


Ecrire ("Salaire du mois courant est :", SMC)

Fin

Ecran mémoire
1000 200
Salaire du mois courant est : 1700 SMP 1000 SMC 1700

PMC 200 PT 500

5
ALGORITHMIQUE ET PROGRAMMATION

Algorithme Somme_deux_entiers
Variables :
x, y, somme : Entiers
Début
Ecrire ("Donnez la valeur de la variable x ")
Lire (x)
Ecrire ("Donnez la valeur de la variable y ")
Lire (y)
somme ← x+ y
Ecrire ("La somme est :", somme)
Fin

IV. Les instructions de base :


a. Affectation
C’est l’action par laquelle on peut attribuer à une variable une valeur résultant de l’évaluation d’une
expression arithmétique ou logique. Cette valeur doit être compatible avec le type de la variable destinataire.

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

Notation : Nom_Variable ← Valeur ou Expression


Exemple 1 : Age ← 15
Exemple 2 : Somme ← N1 + N2

b. Actions de lecture et d’écriture


Ce sont les actions qui expriment la communication entre un algorithme et son utilisateur.

L’instruction de lecture permet de saisir les données est exprimée par le verbe Lire

Syntaxe : Lire (variable) ou Lire (liste de noms de variables)


Où :
Liste de noms de variables est une suite de noms de variables (pas forcément de même type) séparés par
des virgules.
Exemples : Lire (X)
: Lire (X, Y, Z)

6
L’instruction d'écriture permet à l’algorithme de communiquer des valeurs à l’utilisateur en les affichant
à l’écran est exprimée par le verbe Ecrire.
ALGORITHMIQUE ET PROGRAMMATION

Syntaxe : Ecrire (variable) ou bien Ecrire ("message à afficher")


: Ecrire ("message à afficher ", variable)
Exemple :
Lire (A, B, C)
Somme ← A + B + C
Ecrire (''La somme vaut : '', Somme)
Ainsi, si l’utilisateur fournit les valeurs 12, 3 et 7, l’action Ecrire produira l’écriture suivante

La somme vaut : 22

V. Structures de contrôle :
1. Structure séquentielle

La structure séquentielle est une structure dont les instructions s'enchaînent les unes après les
autres et s'exécutent une seule fois au cours de l'algorithme. C'est la structure la plus simple d'un
algorithme.
Exemple :
Écrire un algorithme qui demande à l'utilisateur de saisir la longueur et la largeur d'un rectangle, calcule la
surface du rectangle, puis affiche le résultat.
Algorithme surface_rectangle
Variables :
longueur, largeur, Surface : Réels
Début
Ecrire ("Donner la longueur puis la largeur : ")
Lire (longueur, largeur)
Surface ← longueur * largeur
Ecrire ("La surface du rectangle est : ", Surface)
Fin

2. Structure sélective

Une structure conditionnelle permet d'exécuter des instructions spécifiques en fonction des réponses
à des conditions données. Ces instructions peuvent varier en fonction des résultats des conditions.

7
ALGORITHMIQUE ET PROGRAMMATION

2.1 Conditions

Une condition est une expression qui peut prendre l'une des deux valeurs suivantes vrai ou faux. On
dit également que c'est une valeur de type "logique" ou "booléen".
Les principaux opérateurs de comparaison que vous rencontrerez sont les suivants :
 Égal à (= en pseudo code)
 Différent de ( != ou <> ou ≠en pseudo code)
 Strictement supérieur ( > en pseudo code)
 Strictement inférieur ( < en pseudo code)
 Supérieur ou égal ( >= en pseudo code)
 Inférieur ou égal ( <= en pseudo code)

2.2 Enchaînement conditionnel


L'exécution d'un bloc d'actions peut être conditionnée par la réalisation d'une condition. C'est pourquoi on
introduit dans le langage algorithmique des structures de contrôle conditionnelles standard qui sont :
l'alternative simple, l'alternative complète et le choix multiple.

A. L’alternative simple

Permet d'exécuter certain nombre d'opérations ou au contraire de ne rien faire.

Structure : SI <Condition> Alors <Bloc> Fin SI


Notation :
SI <Condition> Alors Si la condition <Condition> est vérifiée,
Instruction 1 le <Bloc>d'instructions sous contrôle
Instruction 2 <Bloc> sera exécuté ; Sinon, il sera ignoré.
..
..

Instruction n
Fin SI
Si la condition est évaluée à vrai alors le traitement Instruction 1, …, Instruction n est exécuté sinon on
considère l'instruction suivante (première instruction qui suit le mot "Fin SI").
Exemple :
Écrire un algorithme qui demande à l'utilisateur de saisir un dividende et un diviseur, calcule le quotient de
la division du dividende par le diviseur en utilisant des variables de type réel, puis affiche le résultat.
Algorithme quotient
Variables :
dividende, diviseur, q : Réels
Début
Ecrire ("Entrez le dividende : ")
Lire(dividende)
Ecrire ("Entrez le diviseur : ")
Lire(diviseur)

8
ALGORITHMIQUE ET PROGRAMMATION

Si (diviseur != 0 ) Alors
q ← dividende / diviseur
Ecrire ("Le quotient est : ", q)
Fin si
Fin
B. Structure alternative complète

La structure alternative complète est une situation dans laquelle on ne peut choisir qu'entre deux
solutions possibles.

Format général :
SI <Condition> Alors

Instruction 1
.
....

<Bloc1> Si la condition <Condition> est vraie, le bloc


Instruction n d'instructions <Bloc1> sera exécuté et le bloc
d'instructions <Bloc2> sera ignoré ;
Sinon
Sinon, le bloc d'instructions <Bloc1> sera ignoré et
Instruction 1’ le bloc d'instructions <Bloc2> sera exécuté.
<Bloc2>
.
....

Instruction n’
Fin SI

Exemple :
Algorithme quotient
Variables :
dividende, diviseur, q : Réels
Début
Ecrire ("Entrez le dividende : ")
Lire(dividende)
Ecrire ("Entrez le diviseur : ")
Lire(diviseur)
Si (diviseur != 0 ) alors
q ← dividende / diviseur
Ecrire ("Le quotient est : ", q)
Sinon

9
ALGORITHMIQUE ET PROGRAMMATION

Ecrire ("Erreur : le diviseur ne peut pas être zéro.")


Fin si
Fin

3. L’organigramme

Un organigramme en algorithmique est une représentation graphique utilisée pour décrire la


séquence d'étapes ou de processus dans un algorithme. Cela permet de visualiser de manière claire
et structurée le flux logique des opérations à effectuer pour résoudre un problème ou exécuter une
tâche.
Symbole Nom du symbole Fonction
Généralement représenté par un ovale,

Terminal il indique le début ou la fin de


l'algorithme.
Représenté par un parallélogramme est

Entrée-Sortie utilisé pour signifier toute opération


d'entrée/sortie (E/S).
Représenté par un rectangle, dénote

Processus une action ou un ensemble


d'instructions à exécuter dans
l'algorithme
Souvent représentée par un losange,
elle symbolise une condition logique à
Décision évaluer (par exemple, une question
avec une réponse vraie/fausse)

10
ALGORITHMIQUE ET PROGRAMMATION

Exemple :

Exercice n°1 : À l'aide des commandes 'avancer'


et 'allumer', écrivez une séquence d'instructions
pour que le robot allume la case bleue sur le
plateau.

Exercice n°2 : À l'aide des commandes 'avancer',


'allumer', 'tourner à gauche' et 'tourner à droite',
écrivez une séquence d'instructions pour que le robot
allume la case bleue sur le plateau.

Exercice n°3 : Décrivez une séquence d'instructions


pour guider le robot afin qu'il allume la case bleue sur
le plateau.

Exercice n°4 : Remplissez le tableau ci-dessous en


notant les valeurs actualisées des quatre variables
A, B, C et D, après l'exécution des instructions
indiquées dans la première colonne.

11
ALGORITHMIQUE ET PROGRAMMATION

Instructions A B C D
B2
CB+10
A0
DA
Exercice n°5 : Quelles seront les valeurs des BB*D
variables A, B et C après l'exécution des CB+5
instructions suivantes ? A10+4+C
CA+B+D

Algorithme MaJ_variables A = …….; B = ……. ; C = …….; D = …….


Variables A, B, C : Entiers
Début
A←5
B←3
Algorithme Concatenation
C←A+B
Variables A, B, C : chaîne de caractères
A←2 Début
C←B–A A ← '423'
Fin B ← '12'
C←A+B
Écrire(C)
Exercice n°6 : Après l'exécution de l'algorithme
Fin
"Concaténation", quel sera le contenu de la
variable C ?

12
ALGORITHMIQUE ET PROGRAMMATION

Exercice n°7 : Quel sera le résultat après


Exercice n°8 : D est une variable numérique
l'exécution des instructions suivantes ?
initialisée à 5 (D ← 5). S et A sont des variables de
type chaîne de caractères, avec S définie comme
'lydex' (S ← 'lydex'). Veuillez compléter le tableau
A2
suivant :
B9
C  (A<B)
D  (A>B) Instruction Sorties
E  D ET C Ecrire (D)
F  C OU (E ET D) Ecrire ('D')
G (C OU D) ET F Ecrire ('D = ', D)
H  C OU D OU F Ecrire(S)
Ecrire ("la valeur de A est : ", A) Ecrire ('S')
Ecrire ("la valeur de B est : ", B) A  S + ' -se'
Ecrire ("la valeur de C est : ", C) Ecrire(A)
Ecrire ("la valeur de D est : ", D) A  S + '-se'
Ecrire ("la valeur de E est : ", E) Ecrire(A)
Ecrire ("la valeur de F est : ", F) Ecrire('D = ', D,' ; S = ',S)
Ecrire ("la valeur de G est : ", G)
Ecrire ("la valeur de H est : ", H)

Exercice n°10: Rédigez un algorithme qui échange


Exercice n°9 : Rédigez un algorithme qui échange les valeurs de deux variables A et B (sans utiliser de
les valeurs de deux variables A et B, variable temporaire), indépendamment de leur
indépendamment de leur contenu initial. contenu initial.

Exercice n°1 :
Écrire un algorithme qui nous permet de calculer la moyenne de trois nombres réels x, y, et z
Exercice n°2 :
Écrire un algorithme qui nous permet le calculer du BMI (Indice de Masse Corporelle) sachant que :
M= La masse en kilogrammes (masse) et T= la taille en mètres
(taille) d'un individu.
Exercice n°3 : Calcul du pourcentage de perte de poids
Écrire un algorithme qui nous permet de calculer le pourcentage de perte de poids en utilisant la
formule :

13
ALGORITHMIQUE ET PROGRAMMATION

Exercice n°4 : Calcul de la vitesse moyenne


Écrire un algorithme permettant de calculer la vitesse moyenne en utilisant
la formule ci-dessous, en prenant en compte la distance parcourue en
kilomètres (distance) et le temps total de course en heures (temps_total).
Exercice n°5 : Calcul de la force gravitationnelle
Écrire un algorithme permettant de calculer la force gravitationnelle entre deux objets en utilisant la loi de
la gravitation universelle en utilisant la formule suivante :
 F est la force gravitationnelle entre deux masses,
 G est la constante gravitationnelle (≈6.674×10-11N)
 m1 et m2 sont les masses des deux objets,
 d est la distance entre les centres des deux masses.
Exercice n°6: Calcul de la force pressante
Écrire un algorithme permettant de déterminer la force pressante exercée sur
une surface spécifique en appliquant la formule suivante :

Exercice n°8 :
Exercice n°7 : Écrire un algorithme qui permet de calculer le
Écrire un algorithme pour calculer le produit de carré d'un nombre donné.
trois nombres entiers.

Exercice n°10 :
Exercice n°9 : Écrire un algorithme qui calcule l'aire d'un
Écrire un algorithme qui convertit une distance disque dont le rayon est une variable.
donnée en kilomètres en miles.
La formule est : Miles = kilomètre x 0.621
Exercice n°13 :
Donnez le résultat produit par l'algorithme dans
chacun des cas ci-dessous :
Exercice n°11 :
Écrire un algorithme qui permet de calculer le
salaire d'un employé. Ce salaire est calculé sur la
base du nombre d'heures travaillées, multiplié
par un taux horaire fixe (37,50)

Exercice n°12 :
Écrire un algorithme qui demande à l'utilisateur
de saisir trois notes. Ensuite, il calcule et affiche
la moyenne de ces notes, en tenant compte des
coefficients respectifs : Coef_1 = 2, Coef_2 = qt pht ttc
4, Coef_3 = 3. 2 25
4 5
3 14

14
ALGORITHMIQUE ET PROGRAMMATION

15

Vous aimerez peut-être aussi