Implémention AS 2022-2023
Implémention AS 2022-2023
Implémention AS 2022-2023
IMPLEMENTATION
EN PYTHON DES
CONVENTIONS
ALGORITHMIQUES
A. Introduction générale
▪ Python est un langage de programmation sensible à la casse.
En algorithmique En python
Lire (Objet) Objet = input()
Objet = input(‘message’)
En algorithmique En python
Écrire ("Message", Objet, Expression) print ("Message", Objet, Expression)
Écrire_nl ("Message", Objet, Expression) print ("Message", Objet, Expression, "\n")
Remarques :
- Objet est de type variable simple (entier, réel, booléen, caractère et chaîne de
caractères).
- "\n" permet d’ajouter un retour à la ligne.
- L’affichage d’un tableau T en python, doit se faire élément par élément et non pas avec
l’instruction print(T).
c. L’opération d’affectation
En algorithmique En python
Objet Expression Objet = Expression
Remarque : Objet est une variable de type simple (entier, réel, booléen, caractère et
chaîne de caractères).
Implémentation en python des conventions algorithmiques–2022/2023 Page 2 sur 12
2. Les types de données simples
En algorithmique En python
Entier int
Réel float
Booléen bool
Caractère str
Chaîne de caractères str
4. Les déclarations
a. Les objets de type de donnée simple
En algorithmique
En Python
Une variable n’a pas besoin d’être déclarée avec un type particulier : c’est au
moment où on lui attribue une valeur qu’elle sera créée. Ainsi, son type sera défini
en fonction du type de la valeur qui lui a été attribuée. L’identificateur d’une
variable est sensible à la casse.
En algorithmique
En Python
Importation
from numpy import array
ou
from numpy import *
ou
import numpy as alias
o Déclaration du tableau
Déclaration
T = array ([Type_élément] * N)
Tableau à une ou bien
dimension T = array ([valeur_initiale] * N)
T = array ([Type_élément]*Colonnes]* Lignes)
Tableau à deux ou bien
dimensions
T = array ([valeur_initiale]*Colonnes]* Lignes)
Remarque : On peut spécifier le type des éléments d’un tableau avec la syntaxe :
Nom_tableau = array ([Valeur_initiale] * N, dtype=Type_élément)
c. L’enregistrement
En algorithmique
En Python
Nom_enregistrement = dict (
Nom_champ1 = Type_champ1,
Nom_champ2 = Type_champ2,
...
)
Remarque : Pour accéder à un champ d’un enregistrement on utilise la syntaxe
suivante : Nom_Enregistrement [ ‘Nom_Champ’ ].
En algorithmique
En Python
La déclaration d’un objet de type fichier se fait lors de sa création à l'aide de la
fonction open() détaillée ci-après (voir 10.a) et 10.b) ).
En Python
for compteur in range (Début, Fin+1, Pas) :
Traitement
N.B. : La valeur finale du compteur est exclue de la boucle.
Remarques :
- La valeur du pas peut être positive ou négative. Par défaut, elle est égale à 1.
- Ne pas utiliser l’instruction break pour forcer l’arrêt de la boucle for.
Remarque : Ne pas utiliser l’instruction break pour forcer l’arrêt de la boucle while.
En algorithmique En Python
Fonction Nom_fonction (pf1 : type1 , Un module (fonction ou procédure) se
pf2 : type2 , … , pfn : typen) : Type_résultat définit en utilisant le mot clé def selon la
DEBUT syntaxe suivante :
Traitement
Retourner résultat def Nom_module (pf1 , pf2 , … , pfn) :
FIN Traitement
[return résultat]
Procédure Nom_procédure (pf1 : type1 ,
pf2 : type2 , … , pfn : typen)
DEBUT N.B. : Dans un module, l’instruction
Traitement "return" peut être utilisée, et ce, pour
retourner un seul résultat de type
FIN
simple.
b. L’appel
Module En algorithmique En Python
Fonction Objet Nom_fonction (pe1 , …, pen) Objet = Nom_module (pe1 , …, pen)
Procédure Nom_procédure (pe1 , … , pen) Nom_module (pe1 , … , pen)
c. Le mode de passage
En algorithmique En Python
Si le mode de passage est par référence (par
adresse), on ajoutera le symbole @ avant le nom Nom_module (pf1 , pf2 , … , pfn) :
du paramètre. Traitement
2ème façon d’implémentation du module saisieTaille en utilisant une variable globale nommée
Taille
b. Opérateurs de comparaison
Opération En algorithmique En Python
Egal = ==
Différent ≠ !=
Strictement supérieur > >
Supérieur ou égal ≥ >=
Strictement inférieur < <
Inférieur ou égal ≤ <=
Appartient (entier, caractère) in
c. Opérateurs logiques
En algorithmique En Python
Long(ch) len(ch)
Pos(ch1, ch2) ch2.find (ch1)
Convch(x) str (x)
Estnum(ch) ch.isdecimal()
Valeur (ch) int (ch) | float (ch)
Sous_chaine(ch, d, f) ch[d:f]
Effacer (ch, d, f) ch = ch[ : d ]+ch[ f :]
Majus(ch) ch.upper()
Remarque : Pour concaténer deux chaînes de caractères, on utilise l’opérateur « + ».
10. Les fonctions et les procédures prédéfinies sur les fichiers
a. Les fichiers de données
En algorithmique En Python
Ouvrir("Chemin\Nom_physique", Nom_logique=open
Nom_logique , "Mode") (‘Chemin\Nom_physique’ , ‘Mode’)
Avec mode d’ouverture égal à :
o "rb" : Lecture (pointer au
début)
o "wb" : Ecriture (création)
o "ab" : Ajout à la fin du fichier
from pickle import load, dump
Lire (Nom_logique , Objet)
Objet = load (Nom_logique)
from pickle import load, dump
Ecrire (Nom_logique , Objet)
dump (Objet , Nom_logique)
Fin_fichier = False
while not (Fin_fichier) :
try :
Fin_fichier (Nom_logique)
x = load (Nom_logique)
except :
Fin_fichier = True
Fermer (Nom_logique) Nom_logique.close ()