Vous êtes sur la page 1sur 28

Algorithmique et Python

Pr. GABLI MOHAMMED


medgabli@yahoo

MIP + Actuariat
FS-Oujda

2023-2024
Algorithmique et Python
OBJECTIFS DU MODULE
• Apprendre et maitriser les concepts de base
de l'algorithmique et de la programmation
• Être capable de mettre en œuvre ces concepts
pour analyser des problèmes simples et écrire
les algorithmes correspondants
• Initiation à la programmation en langage
Python
18/09/2023 GABLI - 2023 2
Algorithmique et Python
PLAN
• Introduction à l'algorithmique
• Instructions élémentaires (Variable, E/S, …)
• Structures conditionnelles
• Structures répétitives
• Tableau
• Algorithmes de tri et de recherche
• Initiation au langage Python
18/09/2023 GABLI - 2023 3
Algorithme

• Le mot algorithme vient du nom du célèbre


mathématicien arabe Al Khawarizmi (Abu
Ja'far Mohammed Ben Mussa Al-Khwarismi)

• C’est une suite d ’étapes très précises et


ordonnées de telle sorte qu’elles
conduisent à la solution

18/09/2023 4
GABLI - 2023
Algorithme
Intérêt
séparation analyse/codage (pas de préoccupation
de syntaxe)
Qualités
• Exact (fournit le résultat souhaité)
• Efficace (temps d’exécution, mémoire
occupée)
• Clair (compréhensible)
• Général (traite le plus grand nombre de cas
possibles), …
18/09/2023 GABLI - 2023 5
Algorithme
Un algorithme doit
• avoir un nombre fini d’étapes
• avoir un nombre fini d’opérations par étape
• se terminer après un nombre fini d’opérations
• fournir un résultat.

• Les étapes se succèdent dans un certain ordre


• Un algorithme est caractérisé par un début et
une fin

18/09/2023 GABLI - 2023 6


Algorithme

Pour résoudre un problème

1. Comprendre la nature du problème posé


2. Préciser les données fournies (Entrées)
3. Préciser les résultats que l’on désire
obtenir (Sorties)
4. Déterminer le processus de
transformation des données en résultats.
18/09/2023 GABLI - 2023 7
Algorithme

Tous les algorithmes suivent le scénario suivant:


 Au début, l’utilisateur doit entrer certaines
informations (données)
 Ensuite, le programme procède au traitement
 Enfin, le programme affiche le ou les résultats de son
traitement

18/09/2023 GABLI - 2023 8


Entrée

Traitement

Sortie
18/09/2023 GABLI - 2023 9
Algorithme

Exemple: Robot domestique avec un algorithme de


préparation d’une tasse de café soluble

1. Faire bouillir l’eau


2. Mettre le café
3. Ajouter l’eau dans la tasse

18/09/2023 GABLI - 2023 10


Algorithme et Programmation
• L’élaboration d’un algorithme précède l’étape de
programmation
• Un programme est un algorithme
• Un langage de programmation est un langage
compris par l'ordinateur
• La rédaction d’un algorithme est un exercice de
réflexion qui se fait sur papier
• L'algorithme est indépendant du langage de
programmation

18/09/2023 GABLI - 2023 11


Concept de variable

Une variable est une entité qui possède une valeur, et qui
est connue par un nom appelé identificateur

Une variable désigne un emplacement mémoire dont le contenu


peut changer au cours d’un programme (d’où le nom de variable)
 Chaque emplacement mémoire a un numéro qui permet d'y
faire référence de façon unique : c'est l'adresse mémoire de cette
cellule.

18/09/2023 GABLI - 2023 12


Concept de variable

 Les noms de variables doivent être significatifs


Un identificateur peut être écrit en majuscule et/ou en
minuscule
 Un nom de variables doit obligatoirement débuter par une lettre

18/09/2023 GABLI - 2023 13


Concept de variable
Valides Non valides

résultat 9%taxe

Position_cadre _nombre

Taxe_achat Chiffre 1

addition 9A7

18/09/2023 GABLI - 2023 14


Concept de variable

Règle :
La variable doit être déclarée avant d’être utilisée
Une variable est caractérisée par :
• un nom (Identificateur)
• un type qui indique l’ensemble des valeurs que peut prendre la
variable (entier, réel, booléen, caractère, chaîne de caractères, …)
• Une valeur

18/09/2023 GABLI - 2023 15


Les types de données
• le type de données indique quel genre de données,
nous pourrons mettre dans une variable
• Il spécifie les opérations permises sur cette variable

Règle générale
Pour échanger deux variables, ils doivent être de même
type (nature)

18/09/2023 GABLI - 2023 16


Les types de données

Type entier
Une variable de type entier peut contenir
des nombres entiers comme 5; 10; -45

• Byte (codé sur 1octet): de [-27,27[ ou [0, 28[


• Entier court (codé sur 2 octets) : [-215,215[
• Entier long (codé sur 4 octets): [-231,231[

18/09/2023 GABLI - 2023 17


Les types de données
Type réel
Une variable de type réel peut contenir des
nombres réels. Exp: 2.56, -123.54

• Réel simple précision (codé sur 4 octets)

• Réel double précision (codé sur 8 octets)

18/09/2023 GABLI - 2023 18


Les types de données

Type logique ou booléen: deux valeurs VRAI ou


FAUX (0, 1)

Type caractère: lettres majuscules, minuscules, chiffres,


symboles, …, exemples: ’A’, ’a’, ’1’, ’?’, …

Type chaîne de caractère: toute suite de caractères,


exemples: " Nom, Prénom", "code postale: 1000", …

18/09/2023 GABLI - 2023 19


Attention
Il faut bien faire la différence entre " 1 " et 1:

1 représente le chiffre 1
" 1 " représente le caractère 1

Il faut bien faire la différence entre " A " et A:

A indique le nom d ’une variable


" A " représente le caractère A

18/09/2023 GABLI - 2023 20


Déclaration d’une variable
La déclaration de variables est effectuée par la forme suivante :
Variables liste d'identificateurs : type
Exemple:
Variables
i, a, b : entier
x, y : réel
t : booléen
Ch1, ch2 : chaîne de caractères

18/09/2023 GABLI - 2023 21


Constante
• Une constante est une variable dont la valeur ne change
pas au cours de l'exécution du programme, elle peut être
un nombre, un caractère, ou une chaine de caractères.
• En pseudo-code
Constante identificateur=valeur : type
Exemple :
Constante
PI=3.14 : réel

18/09/2023 GABLI - 2023 22


Affectation (Assignation)

L’opération qui permet de donner une valeur à une variable est


notée par a b

 b peut être une valeur, une autre variable ou une expression

 a et b doivent être de même type

 L’affectation ne modifie que ce qui est à gauche de la flèche

18/09/2023 GABLI - 2023 23


Affectation (Assignation)

La valeur d'une variable peut varier au cours du programme.


L'ancienne valeur est tout simplement remplacée par la nouvelle.

Exemple:

somme 4;

somme 3;

Quelle est la valeur de la variable somme?

18/09/2023 GABLI - 2023 24


Opérations numériques

Parmi les opérations mathématiques permises:


L’addition:
Exp:
5 + 45
La soustraction:
Exp:
8-5
18/09/2023 GABLI - 2023 25
La multiplication:
Exp:
8*5

La division:
Exp:
8/5

18/09/2023 GABLI - 2023 26


Priorité des opérateurs

Indique l ’ordre d’évaluations des opérateurs dans une


expression
Exp: calculer l ’expression suivante:
4 + 5 * 2

Solution 1: 4 + 5 * 2 = 18
Solution 2: 4 + 5 * 2 = 14
Quelle est la bonne solution?

18/09/2023 GABLI - 2023 27


Prio Opérateurs signification

1 - + Signe des nombres

2 ( ) Contenu des parenthèses

3 ^ Exposant

4 * / Multiplication et
division
5 + - Addition et soustraction

18/09/2023 GABLI - 2023 28

Vous aimerez peut-être aussi