1. Se7en - Creative Powerpoint Template 1
REPUBLIQUE TUNISIENNE
MINISTERE DE L’EDUCATION
PYTHON
Module d’appentissage du language python
Année scolaire: 2021-2022
2. Se7en - Creative Powerpoint Template 2
≡≡≡ PLAN PYTHON
INTRODUCTION
CHAPITRE I LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
CHAPITRE II LE MODULE « TURTULE »
CHAPITRE III LES STRUCTURES DE CONTROLE
CHAPITRE IV LES SOUS PROGRAMMES
CHAPITRE V ALGORITHMES STANDARDS
3. Se7en - Creative Powerpoint Template 3
I. INTRODUCTION
1. C’est quoi Python?
PYTHON
Python est un langage de programmation inventé par
Guido van Rossum en 1989.
Python est un langage de programmation de haut niveau. Il est
proche des langues naturelles, ce qui facilite l’écriture des
programmes, en plus le programme peut faire fonctionner sans
aucune modification, sur des machines ou des systèmes différents.
Python est un excellent langage pour les débutants car il est facile
à apprendre.
Site officiel : http://www.python.org
4. Se7en - Creative Powerpoint Template 4
2. Qui utilise Python?
FACEBOOK GOOGLE YAHOO
NASA PANDA 3D BATTLEFIELD
I. INTRODUCTION
5. Se7en - Creative Powerpoint Template 5
3. Un peu d’historique
1989 1994 2000 2008 2014 2018
Création du Python
par
Guido van Rossum
Publication de la
version 1.0
Publication de la
version 2.0
Publication de la
version 3.0
Publication de la
version 3.4
Publication de la
version 3.7
I. INTRODUCTION
6. Se7en - Creative Powerpoint Template 6
4. Pourquoi préférer Python aux autres langages?
POURQUOI PYTHON?
PYTHON EST GRATUIT
Téléchargement et installation de python est gratuit et
facile
Le code source est accessible
PYTHON EST FACILE A APPRENDRE
La Structure et la syntaxe sont assez intuitive et facile à
saisir
Indentation du code: Pas de begin et end explicites, ni
d’accolades pour les blocks d’instructions.
Très documenté
PYTHON EST INTERPRETE
Test du quelque lignes du code sans besoin d’écrire un
programme complet
PYTHON EST PORTABLE
Python est portable et multiplateforme
PYTHON EST PUISSANT
Typage dynamique
Gestion automatique de la mémoire(ramasse-miettes)
Optionnellement multithreading est Orienté Objet
Python est riche en terme de bibliothèques(NumPy, SciPy …)
PYTHON EST JOKER
Python est utilisé pour l’administration système(Scripting)
,les applications bureau, le web, la robotique, jeux vidéo …
I. INTRODUCTION
7. Se7en - Creative Powerpoint Template
I. INTRODUCTION
7
5. Installation de Python
SOUS WINDOWS:
• Visitez : https://www.python.org/downloads/
• Choisir la version qui vous convient
• Télécharger le fichier d’installation ( .MSI)
• Installez et commencez à coder !
SOUS UNIX:
Python est pré-installé sur la plupart des systèmes
Unix, y compris Linux et MAC OS X.
8. Se7en - Creative Powerpoint Template 8
6. IDLE: Editeur pour Python
I. INTRODUCTION
IDLE (Intergreted DeveLopement Environement)
L’environnement de développement intégré IDLE est un
logiciel spécialement conçu pour faciliter la
programmation en Python.
IDLE offre un certain nombre de fonctionnalités pour
vous aider à développer vos programmes Python:
• Le Shell Python (Interpréteur interactive).
• L’éditeur de texte avec coloration syntaxique,
l’autocomplétion et l’indentation.
• Le débogueur intégré avec avancement par étape.
IDLE est l’éditeur standard fourni avec la
distribution de Python.
9. Se7en - Creative Powerpoint Template 9
≡≡≡ PLAN PYTHON
INTRODUCTION
CHAPITRE I LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
CHAPITRE II LE MODULE « TURTULE »
CHAPITRE III LES STRUCTURES DE CONTROLE
CHAPITRE IV LES SOUS PROGRAMMES
CHAPITRE V ALGORITHMES STANDARDS
10. Se7en - Creative Powerpoint Template 10
I. Les structures simples
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
1. Opération d’entrée
Nom_variable = input (”texte”) # Le message s’affiche avant de saisir le contenu de la variable
2. Opération de sortie Syntaxe (Python)
print (”texte”) # affichage d’un texte
print (variable) # affiche du contenu d’une variable
print (”texte1”, var1, ...) # affichage mixte
print (expression) # affichage du résultat de l’expression
Syntaxe (Python)
3. Opération d’affectation Syntaxe (Python)
Nom_variable = Expression
Ecrire un programme qui permet de :
- Lire deux entiers a et b.
- Calculer la somme de ces deux entiers et affecter le résultat dans une variable s.
-Afficher la somme.
Activité n°1
11. Se7en - Creative Powerpoint Template 11
II. Les variables
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
1. Déclaration
Nom_variable = Valeur_variable
Syntaxe (Python)
Remarque
Python est sensible à la casse, ce qui signifie que les variables age,Age etAGE sont différentes.
La Fonction type(nom_variable) nous permet de déterminer le type d’une variable sur Python.
Déclarer la variable age=17, puis faire appel à l’aide du nom age,Age etAGE.
Déterminer le type de la variable age.
Activité n°1
12. Se7en - Creative Powerpoint Template 12
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
1. Le type int Une variable de type int est un nombre sans virgule.
Exemple: n = 20
2. Le type float
Les opérations arithmétiques et de comparaison sur les types numériques (int, float)
Une variable de type float est un nombre à virgule.
Exemple: moyenne = 15.75 moyenne = 15,75
Opérateur Syntaxe Python Exemple
Addition + 2 + 2 donne 4
Soustraction - 2.4–6.0 donne –3.6
Multiplication * 3*2 donne 6
Division / 5/2.5 donne 2.0
Puissance ** 3**3 donne 27
Division entière // 10.0//3.0 donne 3.0
Reste de la division entière % 5%2 donne 1
Syntaxe Python Signification Exemple
< Strictement inférieur à 2 < 3 donne True
<= Inférieur ou égal à 2.75 <= 2 donne False
> Strictement supérieur à 3 > 2 donne True
>= Supérieur ou égal à 2.5 >= 2 donne True
== Égal à 2.5 == 2.5 donne True
!= Différent de 2 != 2 donne False
Activité n°2
En utilisant Python IDLE, Evaluer les expressions suivantes:
15 / 2 + 13.5 // 5 <= 8
2 ** 2 * 5 % 3.5
7 + 3 // 2 != 8 % 2
13. Se7en - Creative Powerpoint Template 13
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
3. Le type bool bool est un type de variable à deux états: True ou False
Exemple: p = True
Les opérateurs logiques
Activité n°3
Evaluer les expressions logiques suivantes:
not(2 < 1)
True and (5 != 6)
(2 < 1) or (7 == 7)
Python définit 3 opérateurs logiques:
not (NON logique): inverse une valeur.
and (ET logique): impose les deux expressions à True.
or (OU logique): nécessite une seule expression à True.
p q not(p) p and q p or q
False False True False False
False True True False True
True False False False True
True True False True True
Table de vérité des opérations logiques
14. Se7en - Creative Powerpoint Template 14
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
4. Le type str Une donnée de type str est une suite quelconque de caractères.
Exemple: nom = "Tounsi" | prenom=‘Mohamed’
Accès aux caractères individuels d’une chaîne
Activité n°4
Soit la chaîne ch=’Bython’.
Afficher les caractères d’indices respectifs 0 et 3 dans ch.
Afficher les caractères d’indices respectifs -1 et -6 dans ch.
Essayer de remplacer le caractère ‘B’ par ‘P’.
Python offre des mécanismes permettant d'accéder séparément à chacun des caractères d'une chaîne.
L’accès aux caractères se fait par index.
Exemple:
ch = ‘B o n j o u r’
indice (positif) 0 1 2 3 4 5 6
indice (négatif) -7 -6 -5 -4 -3 -2 -1
Ou bien
ch[0] donne ‘B’
ch[5] donne ‘u’
ch[-7] donne ‘B’
ch[-5] donne ‘n’
Remarque
Les chaînes de caractères sont immuables (on ne peut pas changer leurs valeurs).
Il est donc, interdit d’écrire par exemple: ch[0]=’P’
15. Se7en - Creative Powerpoint Template 15
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
4. Le type str Opérations sur les chaines de caractères
Activité n°5
Soit les chaînes de caractères suivantes:
ch1=’programmer’
ch2=’en‘
ch3=’PYTHON’
1) Concaténer ch1, ch2 et ch3 dans ch.Afficher ch.
2) Vérifier si ch2 est en majuscule.
3) Compter le nombre de ‘m’ dans ch1.
4) Donner la position du mot ‘PYTHON’ dans la chaîne ch.
Python intègre de nombreuses fonctions qui permettent d’effectuer divers traitements sur les chaînes de
caractères (conversions majuscules/minuscules, recherche de mots, découpage, etc).
Documentation Python: Fonctions sur les chaînes de caractères
Fonction Description Exemple
len(ch) Retourne la longueur de la chaîne ch len(‘Bonjour’) donne 7
+ Concaténation de deux ou plus chaînes de caractères ‘Bonjour’+’Python’ donne ‘BonjourPython’
* Répétition d’une chaîne de caractères ‘Python’*3 donne ‘PythonPythonPython’
ch.isupper() Tester si la chaîne ch est en minuscules ‘Bonjour’.isupper() donne False
ch.upper() Mettre la chaîne ch en majuscules ‘Bonjour’.upper donne ‘BONJOUR’
ch.find(s) Donne la position d’une sous chaîne s dans la chaîne ch ‘mes amis’.find(‘am’) donne 4
ch.count(s) Compte le nombre d’occurrence d’une sous chaîne s ‘Bonsoir les sersois’.count(‘oi’) donne 2
ch.replace(x,y,n) Remplace les n premières occurrences de x par y ‘Bonsour’.replace(‘s’, ‘j’, 1) donne ‘Bonjour’
16. Se7en - Creative Powerpoint Template 16
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
5. Le type list Une liste est une collection ordonnée d’éléments..
Exemple: infoperso = [’Tounsi’,‘Mouhamed’,17,1.85]
Remarque
Une liste peut contenir d’éléments ayant des types variés.
Accès aux éléments d’une liste
On peut accéder aux éléments d’une liste à l’aide de leur indice associé
Exemple:
indice (positif) 0 1 2
couleurs = [ ‘Rouge’ , ‘Bleu’ , ‘Vert’ ]
indice (négatif) -3 -2 -1
Ou bien
couleurs[0] donne ‘Rouge’
couleurs[2] donne ‘Vert’
couleurs[-1] donne ‘Vert’
couleurs[-2] donne ‘Bleu’
Activité n°6
Soit la liste: couleurs= [’Rouge’,’Bleu’,’Vert’]
1) Déclarer la liste couleurs.
2)Afficher l’élément à la position 2. Y a t-il une autre méthode pour afficher cet élément.
3) Remplacer la couleur ‘Rouge’ par ‘Orange’.
4)Afficher la liste couleurs.
Remarque
En Python, les listes sont modifiables (Il est possible de changer les éléments individuels d’une liste).
17. Se7en - Creative Powerpoint Template 17
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
5. Le type list Opérations sur les listes
Activité n°8
Définir la liste: noms = [’sami’, ‘ali’, ‘walid’, ‘mehdi’], puis effectuer les actions suivantes:
1)Ajouter ‘ahmed’ à la fin de la liste.
2) Supprimer ‘ali’ de la liste.
3) Trouver la position de ‘walid’ dans la liste.
4) Trier la liste.
5)Afficher la liste.
Les listes possèdent plusieurs méthodes très pratiques pour les manipuler:
Fonction Description
len(list) Retourne la longueur de la liste
list.append(elem) Ajoute un élément à la fin de la liste
list.insert(index,elem) Insère un élément à un index donné et décale les autres éléments vers la droite
list.extend(list2) Concatène la liste 2 à la fin de la liste
list.index(elem) Retourne l’index d’un élément donné dans la liste
list.remove(elem) Supprime la première occurrence d’un élément donné dans la liste
list.sort() Trie la liste
list.reverse() Renverse la liste
list.pop(index) Supprime et retourne l’élément à l’index donné
18. Se7en - Creative Powerpoint Template 18
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
5. Le type list Liste des listes
Activité n°9
Soit le tableau de 2 dimensions suivant:
1) Déclarer le tableau tab2d.
2)Afficher l’élément à la deuxième ligne et troisième colonne.
3) Remplacer l’élément à la deuxième ligne et troisième colonne par 6.
4)Afficher tab2d.
On peut créer une liste de listes, qui s’apparente à un tableau à 2 dimensions (ligne, colonne).
Exemple: infopers = [ [’Tounsi’,‘Mouhamed’,17,1.85] ,
[‘Cherni’,’Ahmed’,20,1.70] ]
infopers [1][0] donne ‘Cherni’
infopers [0][2] donne 17
5 7 3
8 10 15
22 4 0
19. Se7en - Creative Powerpoint Template 19
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
6. Le type tuple
Activité n°9
Soit le tuple : tuple_notes = (10, 7.5, 19, 5, 9.5)
1) Déclarer le tuple.
2)Afficher l’élément à la position 2
3) Remplacer 7.5 par 11.5
En Python le type tuple permet de créer des sortes de listes non modifiables (une fois déclaré ne peut
plus être modifié).
Exemple: tuple_1 = ( 7, ‘d’, 5, 4.5)
tuple_2 = ‘a’, ‘b’, 5, 4.5 # les parenthèses ne son pas obligatoires
list_3 = [ 9 , ‘b’, 5, 4.5]
tuple_3 = tuple(list_3)
Remarque
Le tuple permet une affectation multiple:
v1, v2 = 11, 22
On peut utiliser cette syntaxe pour permuter deux valeurs: x, y = y, x
Il permet également de renvoyer plusieurs valeurs lors d’un appel d’une fonction.
20. Se7en - Creative Powerpoint Template 20
III. Les types de données
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
7. Le type dict Un dictionnaire en python est une sorte de liste mais au lieu d'utiliser des index , on utilise des clés ,
c'est à dire des valeurs autres que numériques.
Exemple: infopers= { "Nom": "Tounsi", "Prenom": "Mohamed", "Age": 25 }
print (infopers["Nom "]) # accéder à un élément d’un dictionnaire
‘ Tounsi ’
infopers["Age "] = 30 # Mettre à jour la valeur de clé “Age”
infopers[" Tél "] = 99999999 #Ajouter un nouveau élément avec la clé est “Tél”
del infopers["Age "] # Supprimer un élément avec la clé est “Age”
len (infopers) # Renvoi le nombre des éléments
infopers.keys() # Renvoi les clés
infopers.values() # Renvoi les valeurs
infopers.clear() # Supprimer tous les éléments
dir(infopers) # Renvoie les membres de la classe dict
21. Se7en - Creative Powerpoint Template 21
VI. Evaluation
CHAPITRE I: LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
22. Se7en - Creative Powerpoint Template 2
2
≡≡≡ PLAN PYTHON
INTRODUCTION
CHAPITRE I LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
CHAPITRE II LE MODULE « TURTULE »
CHAPITRE III LES STRUCTURES DE CONTROLE
CHAPITRE IV LES SOUS PROGRAMMES
CHAPITRE V ALGORITHMES STANDARDS
23. Se7en - Creative Powerpoint Template 23
CHAPITRE II: Le module « Turtle »
1. Présentation Le module Turtle est un ensemble d’outils permettant de dessiner à l’aide d’instructions simples.
Une tortue est un petit robot qui dessine sur l’écran et on peut lui dire de se déplacer en utilisant des commandes en
Python.
2. Fonctions du module Turtle import turtle # importer le module turtle
Fonction Effet
Turtle() Créer votre tortue
forward(n) ou fd(n) Avancer de n pixels
backward(n) ou bk(n) Reculer de n pixels
left(n) ou lt(n) Tourner à droite de n degrés
right(n) ou rt(n) Tourner à gauche de n degrés
goto(x,y) Aller à l’endroit de coordonnées x et y.
color(couleur) Modifier la couleur de la ligne que la tortue trace (‘red’, ‘green’, ‘blue’, etc).
width(n) Choisir l’épaisseur du tracé
up() Relever le crayon (pour pouvoir avancer sans dessiner)
down() Baisser le crayon (dessiner lors de déplacement)
clear() Effacer l’écran
reset() Effacer l’écran, recentrer la tortue et réinitialiser ses paramètres.
circle(n) Tracer un cercle de rayon n pixels à gauche de la tortue
speed(n) Changer la vitesse de 1(lent) à 10(rapide). La valeur spéciale 0 est la plus rapide.
shape(form) Modifier la forme de la tortue ('turtle', 'circle', 'square‘, etc)
write(‘text’) Ecrire un texte
begin_fill() ……. end_fill() Colorer l’intérieur d’une courbe fermée
Exemple: le script suivant begin_fill() circle(100) end_fill() crée un disque plein
24. Se7en - Creative Powerpoint Template 24
CHAPITRE II: Le module « Turtle »
3. Exercices Exercice n°1
Utiliser la bibliothèque turtle, pour dessiner un carré de côté égal à 100 pixels.
Exercice n°2
Utiliser la bibliothèque turtle, pour dessiner un triangle équilatérale
de côté 150 pixels coloré en rouge.
Exercice n°3
Ecrire un programme python qui permet de :
• Calculer et d’afficher la surface d’un rectangle.
• Dessiner le rectangle en utilisant la bibliothèque turtle.
Sachant que la longueur et la largeur sont données.
Exemple :
Si la longueur =200 et la largeur =100. Le programme affiche :
La surface du rectangle est: 20000 pixels
25. Se7en - Creative Powerpoint Template 2
5
≡≡≡ PLAN PYTHON
INTRODUCTION
CHAPITRE I LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
CHAPITRE II LE MODULE « TURTULE »
CHAPITRE III LES STRUCTURES DE CONTROLE
CHAPITRE IV LES SOUS PROGRAMMES
CHAPITRE V ALGORITHMES STANDARDS
26. Se7en - Creative Powerpoint Template 26
I. Les structures de contrôle itératives
CHAPITRE III: LES STRUCTURES DE CONTROLE
1. Structure iterative complète
for e in séquence:
instruction 1
…
instruction n
# retour à la ligne sans indentation
Syntaxe (Python)
Une structure de contrôle itérative complète permet de répéter l’exécution d’une suite d’instructions un nombre
fini de fois connu à l’avance.
Remarque
Une instruction composée se compose:
- d’une ligne d’en-tête terminée par deux-points.
- d’un bloc d’instruction indenté par rapport à la ligne d’en-tête.
Toutes les instructions au même niveau d’indentation appartiennent au même bloc.
27. Se7en - Creative Powerpoint Template 27
I. Les structures de contrôle itératives
CHAPITRE III: LES STRUCTURES DE CONTROLE
1. Structure iterative complète Activité n°1
Écrire un script Python qui permet d’afficher la table de multiplication par 9 en utilisant la boucle for.
Activité n°2
Écrire un programme Python qui demande le côté d'un carré, puis qui dessine le carré à l'aide
d'une boucle for.
28. Se7en - Creative Powerpoint Template 28
I. Les structures de contrôle itératives
CHAPITRE III: LES STRUCTURES DE CONTROLE
1. Structure itérative complète
Activité n°2
Ecrire un programme python nommé SpiraleCarrée que réalise le dessin de droite.
Le premier segment mesure 10 pixels. Regarder bien la longueur que fait chaque
trait en partant du centre de la figure. Ceci peut-être écrit en 5 lignes !
Activité n°3
Saisir le programme python suivant et l’enregistrer dans un fichier ayant pour nom « fleur ».
Exécuter ce programme.
import turtle
t=turtle.Turtle()
t.color('red','pink')
t.width(4)
t.begin_fill()
for i in range(17):
t.circle(i*3, 180)
t.right(45)
t.end_fill()
29. Se7en - Creative Powerpoint Template 29
I. Les structures de contrôle itératives
CHAPITRE III: LES STRUCTURES DE CONTROLE
1. Structure itérative complète Activité n°4
Ecrire un programme Python qui compte le nombre de lettres z dans une chaîne de caractères.
Activité n°5
Ecrire un programme Python qui permet de dessiner un tourbillon coloré.
30. Se7en - Creative Powerpoint Template 30
I. Les structures de contrôle itératives
CHAPITRE III: LES STRUCTURES DE CONTROLE
2. Structure itérative
à condition d’arrêt
while condition :
instruction 1
…
instruction n
# retour à la ligne sans indentation
Syntaxe (Python)
Une structure de contrôle itérative à condition d’arrêt permet de répéter l’exécution d’une suite d’instructions
jusqu’à rencontrer la condition d’arrêt.
Cette structure est utilisée dans le cas où le nombre de répétitions est inconnu à l’avance.
Activité n°6
Écrire un programme permettant de tracer un pentagone régulier de côté 120 px à l’aide de la boucle while.
31. Se7en - Creative Powerpoint Template 31
I. Les structures de contrôle itératives
CHAPITRE III: LES STRUCTURES DE CONTROLE
2. Structure itérative
à condition d’arrêt
Activité n°7
Saisir le programme python suivant et l’enregistrer dans un fichier ayant pour nom « cercles aléatoires».
Tester le programme. Est que on peut déterminer le nombre de cercles à tracer à l’avance?
import turtle
import random
t = turtle.Turtle()
t.speed(0)
my_color = ['red', 'blue', 'green','yellow','black','magenta','cyan']
r=random.randint(1,110)
while r<=100:
t.up()
t.goto(random.randint(-300,300),random.randint(-300,300))
t.down()
t.color(random.choice(my_color))
t.dot(r,random.choise(my_color))
r=random.randint(1,110)
32. Se7en - Creative Powerpoint Template 32
II. Les structures de contrôle conditionnelles
CHAPITRE III: LES STRUCTURES DE CONTROLE
1. Forme généralisée
if condition 1:
Traitement 1
elif condition 2:
Traitement 2
…
elif condition n-1:
Traitement n-1
else:
Traitement n
# retour à la ligne sans indentation
Syntaxe (Python)
Une structure de contrôle conditionnelle est dite généralisée lorsqu’elle permet de résoudre des problèmes
comportant plus de deux traitements en fonction des conditions.
L’exécution d’un traitement entraîne automatiquement le non exécution des autres traitements.
Activité n°8
Ecrire un programme python qui permet de dessiner une forme géométrique donnée.
Ce programme ne sait dessiner que les formes suivantes: cercle, carré et triangle.
33. Se7en - Creative Powerpoint Template 33
II. Les structures de contrôle conditionnelles
CHAPITRE III: LES STRUCTURES DE CONTROLE
1. Forme généralisée Activité n°9
Ecrire un programme tortue_folle.py qui fonctionne de la manière suivante :
1. On fixe une variable rayon égal à 200 et une variable lm à 10.
2. On trace un cercle centré en (0,0) à l’aide des commandes circle(rayon) et goto(x,y).
3. La tortue effectue des déplacements élémentaires de taille lm et à la fin de chacun d’entre eux elle peut
tourner à gauche, à droite ou faire demi-tour (elle choisit au hasard). Ici on utilisera la commande
randint(1,3).
4. la tortue se promène ainsi et le programme s’arrête lorsqu’elle sort du cercle. Sachant que la
commande distance(0,0) renvoie la distance de la tortue à l’origine.
Vous devriez avoir une figure de ce genre :
34. Se7en - Creative Powerpoint Template 34
III. Evaluation
CHAPITRE III: LES STRUCTURES DE CONTROLE
35. Se7en - Creative Powerpoint Template 3
5
≡≡≡ PLAN PYTHON
INTRODUCTION
CHAPITRE I LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
CHAPITRE II LE MODULE « TURTULE »
CHAPITRE III LES STRUCTURES DE CONTROLE
CHAPITRE IV LES SOUS PROGRAMMES
CHAPITRE V ALGORITHMES STANDARDS
36. Se7en - Creative Powerpoint Template 36
I. Les fonctions
CHAPITRE IV: LES SOUS PROGRAMMES
1. Présentation et syntaxe
def nomFonction (paramètres) :
“”“ Documentation de la fonction “””
bloc d’instructions
return résultats
Syntaxe (Python)
Une fonction est un sous programme qui peut retourner plusieurs résultats.
Remarque
Le bloc d’instruction est obligatoire.
La documentation (facultative) est fortement conseillée.
Activité n°1
Ecrire une fonction majorité qui prend en paramètre le prénom et l'âge d’une personne.
La procédure affichera ensuite un message disant ‘Bonjour prénom’, puis indiquera s’il est mineur (-18) ou
s’il est majeur.
37. Se7en - Creative Powerpoint Template 37
I. Les fonctions
CHAPITRE IV: LES SOUS PROGRAMMES
Remarques
Pour utiliser une fonction, il suffit de l’appeler par son nom + ses paramètres s’il y en a.
nomFonction(paramètres)
L’accès à la documentation se fait avec la fonction
help(nomFonction).
1. Présentation et syntaxe
Activité n°3
Ecrire une fonction volumeSphere qui calcule le volume d’une sphère de rayon r fourni en argument.
Tester la fonction volumeSphere par un appel dans le programme principal.
NB: Volume d’une sphère = 4/3 * π * (Rayon) 3
Activité n°2
Ecrire une fonction triangle(taille) qui permet de tracer un
triangle équilatéral.
Ecrire une fonction hexagone(taille) qui trace un hexagone en
utilisant notre fonction « triangle ».
Ecrire un programme qui trace une toile d’araignée en utilisant
notre fonction « triangle ». Sachant que les toiles sont séparés les
uns des autres par 15 px.
38. Se7en - Creative Powerpoint Template 38
I. Les fonctions
CHAPITRE IV: LES SOUS PROGRAMMES
Activité n°4
Ecrire une fonction airePerimRect qui calcule l’aire et le périmètre d’un rectangle.
NB: aire = longeur x largeur
perim = (longeur + largeur) x 2
Remarques
En python, une fonction peut retourner plusieurs valeurs !
1. Présentation et syntaxe
39. Se7en - Creative Powerpoint Template 39
I. Les fonctions
CHAPITRE IV: LES SOUS PROGRAMMES
Lorsqu’une fonction est appelée, Python réserve pour elle un espace de noms. Cet espace de noms local à la fonction
est à distinguer de l’espace de noms global où se trouvait les variables du programme principal.
- Les variables locales sont définies à l’intérieur du corps d’une fonction, ces variables ne sont accessible
qu’a la fonction elle même.
- Les variables globales sont définies à l’extérieur d’une fonction et leur contenu est visible de l’intérieur
d’une fonction.
Une variable globale ne peut pas être modifiée depuis le corps d’une fonction, si elle est immutable
(int, float, bool, str, tuple).
Une variable globale peut être modifiée depuis le corps d’une fonction, si elle est mutable (list, dict, set ...)
Exemple
2. Variables locales, variables
globales
Type int (immuable) Type str (immuable) Type list (muable)
40. Se7en - Creative Powerpoint Template 40
I. Les fonctions
CHAPITRE IV: LES SOUS PROGRAMMES
Chaque paramètre de la définition de la fonction correspond, dans l’ordre, à un argument de l’appel.
Le (ou les) argument effectif d’entrée peut être une constante, une variable, le résultat d’une expression.
Remarques
Le nom d’une variable que nous passons comme argument n’a rien à voir avec le nom du paramètre correspondant
dans la fonction ( ces noms peuvent être différents) .
3. Passage des arguments
41. Se7en - Creative Powerpoint Template 41
I. Les fonctions
CHAPITRE IV: LES SOUS PROGRAMMES
Activité n°5
Ecrire une fonction supprimElementsNegatifs prenant une liste d’entiers et supprimant les entiers strictement
négatifs de cette liste.
Tester cette fonction.
Remarque
Une fonction peut agir sur leurs paramètres (peut retourner un résultat via ses paramètres).
1. Présentation et syntaxe
42. Se7en - Creative Powerpoint Template 42
II. Projets
CHAPITRE IV: LES SOUS PROGRAMMES
L’idée de ce projet est de créer une scène qui contient une maison, un arbre et un soleil.
Pour faciliter le travail, vous devez d’abord définir les fonctions suivantes:
• Définir une fonction dessinerRectangle(t, largeur, hauteur, couleur) pour dessiner et remplir un rectangle
avec les dimensions et la couleur sont données.
Exemple: dessinerRectangle(t, 100, 50, “blue”) donne
• Définir une fonction dessinerTriangle(t, longueur, couleur) pour dessiner et remplir un triangle rectangle
isocèle avec la longueur de l'hypoténuse et la couleur sont données.
Exemple: dessinerRectangle(t, 100, “green”) donne
• Définir une fonction dessinerParallelogram(t, largeur, hauteur, couleur) pour dessiner et remplir un
parallélogramme, avec les dimensions et la couleur sont données.
Exemple: dessinerParallelogram(t, 100, 50, “brown”) donne
• Définir une fonction dessinerRayons(t, longueur, rayon) pour dessiner quatre rayons de soleil de longueur
donnée, pour le soleil du rayon donné. La tortue commence au centre du cercle.
Exemple: dessinerRayons(t, 40, 50) donne
1. Projet: Maison pour tortue
43. Se7en - Creative Powerpoint Template 43
II. Projets
CHAPITRE IV: LES SOUS PROGRAMMES
Maintenant en utilisant les fonctions précédentes dessiner la scène suivante:
1. Projet: Maison pour tortue
44. Se7en - Creative Powerpoint Template 44
III. Evaluation
CHAPITRE IV: LES SOUS PROGRAMMES
45. Se7en - Creative Powerpoint Template 4
5
≡≡≡ PLAN PYTHON
INTRODUCTION
CHAPITRE I LES STRUCTURES SIMPLES ET LES STRUCTURES DE DONNEES
CHAPITRE II LE MODULE « TURTULE »
CHAPITRE III LES STRUCTURES DE CONTROLE
CHAPITRE IV LES SOUS PROGRAMMES
CHAPITRE V ALGORITHMES STANDARDS
46. Se7en - Creative Powerpoint Template 46
I. Les algorithmes de recherche
CHAPITRE V: ALGORITHMES STANDARDS
1. La recherche séquentielle
La méthode de recherche séquentielle d’un élément dans un tableau consiste à parcourir le tableau élément par
élément en les comparant avec l’élément à chercher jusqu’a trouver ce dernier ou achever le tableau.
- Si on trouve l’élément recherché alors on sort par la valeur Vrai
- Si on atteint la fin du tableau sans rien trouver, on sort avec la valeur Faux
Exemple : Recherche de l’élément 5 dans le tableau t.
Principe de la recherche séquentielle
8 3 12 9 5 10 6
8 3 12 9 5 10 6
8 3 12 9 5 10 6
8 3 12 9 5 10 6
8 3 12 9 5 10 6 On a trouvé 5 donc la recherche s’arrête.
47. Se7en - Creative Powerpoint Template 47
I. Les algorithmes de recherche
CHAPITRE IV: ALOGORITHMES STANDARDS
2. La recherche séquentielle Activité n°1
En se basant sur le principe de la recherche séquentielle, déterminer l’algorithme de la fonction rechSeq.
Traduire la solution en un programme Python.
Algorithme
0) Def Fn rechSeq( T :Tab; n, x :entier): Booléen
1) i ← 1
Tantque ( i ≤ n et T[ i ] != x ) faire
i ← i + 1
FinTantque
2) Si ( i = n+1 ) alors
rechSeq ← Faux
Sinon
rechSeq ← Vrai
FinSi
3) Fn rechSeq
48. Se7en - Creative Powerpoint Template 48
I. Les algorithmes de recherche
CHAPITRE V: ALOGORITHMES STANDARDS
2. La recherche dichotomique
Comparer l’élément x recherché avec celui du milieu du tableau:
- Si x = T[ milieu ], on arrête le traitement.
- Si x < T[ milieu ], il suffit de chercher x dans la 1ère moitiè du tableau.
- Si x > T[ milieu ], il suffit de chercher x dans la 2ème moitiè du tableau.
On continue le découpage jusqu’a un sous tableau de taille 1.
Remarque : La recherche dichotomique s’applique uniquement sur un tableau trié.
Exemple : Recherche de l’élément 15 dans le tableau trié T.
Principe de la recherche dichotomique
3 5 6 8 9 12 15 19 23 51 Faux
trouve
inf sup
milieu
3 5 6 8 9 12 15 19 23 51 Faux
trouve
inf sup
milieu
3 5 6 8 9 12 15 19 23 51 Faux
trouve
inf sup
milieu
3 5 6 8 9 12 15 19 23 51 Vrai
trouve
inf sup
milieu
T[milieu] < 15
T[milieu] > 15
T[milieu] < 15
T[milieu] = 15
49. Se7en - Creative Powerpoint Template 49
I. Les algorithmes de recherche
CHAPITRE IV: ALOGORITHMES STANDARDS
1. La recherche dichotomique Activité n°2
En se basant sur le principe de la recherche dichotomique, déterminer l’agorithme de la fonction rechDic.
Traduire la solution en un programme Python.
Algorithme
0) Def Fn rechDic( T :Tab; n, x :entier): Booléen
1) inf ← 1
sup ← n
trouve ← Faux
Tantque ( inf ≤ sup et trouve = Faux ) faire
milieu ← (inf + sup) div 2
Si ( x < T[ milieu ] ) alors
sup ← milieu - 1
Sinon Si ( x > T[ milieu ] ) alors
inf ← milieu + 1
Sinon
trouve ← Vrai
FinSi
FinTantque
2) rechDic ← trouve
3) Fin rechDic
50. Se7en - Creative Powerpoint Template 50
II. Les algorithmes de tri
CHAPITRE V: ALGORITHMES STANDARDS
1. Le tri par insertion
Exemple :
Principe du tri par insertion
Ordonner les deux premiers éléments
Insérer le 3ème élément de manière à ce
que les 3 premiers éléments soient triés
Insérer le 4ème élément à sa bonne place
pour que les 4 premiers éléments soient triés
……………
Répéter le traitement jusqu’à avoir la liste
triée
51. Se7en - Creative Powerpoint Template 51
II. Les algorithmes de tri
CHAPITRE V: ALGORITHMES STANDARDS
1. Le tri par insertion Activité n°3
En se basant sur le principe du tri par insertion, déterminer l’agorithme de la procéduire triInsertion.
Traduire la solution en un programme Python.
Algorithme
0) Def Proc triInsertion(var T:Tab; n:entier)
1) Pour i de 2 à n faire :
x ← T[ i ]
j ← i
Tantque ( j > 1 et T[ j-1] > x ) faire
T[ j ] ← T[ j-1]
j ← j-1
Fin Tantque
T[ j ] ← x
FinPour
2) Fin triInsertion
52. Se7en - Creative Powerpoint Template 52
II. Les algorithmes de tri
CHAPITRE V: ALGORITHMES STANDARDS
2. Le tri à bulles
1) Comparer le premier et le deuxième élément et les permuter s’ils sont désordonnés
2) Refaire l’action 1 jusqu’a l’avant dernier élément
3) refaire les actions 1 et 2 jusqu’a ce qu’on ne peut plus permuter.
Principe du tri à bulles
Exemple :
53. Se7en - Creative Powerpoint Template 53
II. Les algorithmes de tri
CHAPITRE V: ALGORITHMES STANDARDS
2. Le tri à bulles Activité n°4
En se basant sur le principe du tri à bulles, déterminer l’agorithme de la procédure triBulles.
Traduire la solution en un programme Python.
Algorithme
0) Def Proc triBulles(var T :Tab; n :entier)
1) permut ← True
Tantque ( permut = True ) faire
permut ← faux
Pour i de 1 à n - 1 faire
si T[ i ] > T[ i + 1 ] alors
tmp ← T[ i ]
T[ i ] ← T[ i+1 ]
T[ i+1 ] ← tmp
permut ← vrai
Finsi
FinPour
Fin Tantque
2) Fin triBulles
54. Se7en - Creative Powerpoint Template 54
II. Les algorithmes de tri
CHAPITRE V: ALGORITHMES STANDARDS
3. Le tri par sélection Principe du tri par sélection
Trouver le plus petit élément et le mettre au début de la
liste
Trouver le 2ème plus petit élément et le mettre en
second position
Trouver le 3ème plus petit élément et le mettre à la
3ème place
…………..
Répéter le traitement jusqu’à avoir la liste triée
55. Se7en - Creative Powerpoint Template 55
II. Les algorithmes de tri
CHAPITRE V: ALGORITHMES STANDARDS
2. Le tri par sélection Activité n°4
En se basant sur le principe du tri par sélection, déterminer l’algorithme de la procédure triSelection.
Traduire la solution en un programme Python.
Algorithme
0) Def Proc triSelection(var T :Tab; n :entier)
1) Pour i de 1 à n-1 faire
posmin ← I
Pour j de i+1 à n faire
si T[ j ] < T [posmin] alors
posmin ← j
Finsi
FinPour
Si (posmin ≠ i) alors
temp ← T[ j ]
T[ j ] ← T [posmin]
T[posmin] ← temp
FinSi
Fin Pour
2) Fin triSelection
56. Se7en - Creative Powerpoint Template 56
III. Les algorithmes récurrents
CHAPITRE V: ALGORITHMES STANDARDS
1. Présentation
Un algorithme récurrent est un algorithme utilisant un traitement répétitif pour produire un résultat calculé.
Ce résultat peut dépendre des P résultats précédents : c’est un algorithme récurrent d’ordre P.
- Si P = 1, on parle d’algorithme récurrent d’ordre 1
- Si P = 2, on parle d’algorithme récurrent d’ordre 2
Exemple :
1) Un+1 = -2Un - 4 , algorithme récurrent d’ordre 1.
2) Un+2= Un+1 + Un , algorithme récurrent d’ordre 2.
57. Se7en - Creative Powerpoint Template 57
III. Les algorithmes récurrents
CHAPITRE V: ALGORITHMES STANDARDS
2. Calcul de somme Activité n°5
Ecrire un algorithme d’une fonction qui permet de calculer la somme de n premiers entiers, ainsi que la traduction en
Python.
Algorithme
0) Début Fn somme(n :entier): entier
1) s ← 0
2) Pour i de 1 à n faire
s ← s + i
Fin Pour
3) somme ← s
4) Fin somme
Remarque
Pour une valeur donnée de compteur i, la valeur de la somme est égale à la valeur ancienne incrementée de la valeur
de i ( s ← s + i ).
C’est un algorithme récurrent d’ordre 1.
58. Se7en - Creative Powerpoint Template 58
III. Les algorithmes récurrents
CHAPITRE V: ALGORITHMES STANDARDS
2. Calcul de somme Activité n°6
Ecrire un algorithme d’une procédure Somme1 qui permet de calculer et d’afficher la somme de n entiers saisis par
l’utilisateur.
Algorithme
0) Début Proc somme1(n :entier)
1) s ← 0
2) Pour i de 1 à n faire
lire(m)
s ← s + m
Fin Pour
3) Ecrire(”La somme est ”, s)
4) Fin somme1
59. Se7en - Creative Powerpoint Template 59
III. Les algorithmes récurrents
CHAPITRE V: ALGORITHMES STANDARDS
3. Recherche de munimum
et de maximum
Activité n°7
Ecrire un algorithme d’une procédure qui permet de rechercher la plus petite et la plus grande valeur dans un tableau
contenant n entiers. Traduire cet algorithme en Python.
Algorithme
0) Début Proc minMax(T :Tab; n :entier; var min, max :entier)
1) min ← T[1]; max ← T[1]
2) Pour i de 2 à n faire
Si T[ i ] < min alors
min ← T[ i ]
Fin Si
Si T[ i ] > max alors
max ← T[ i ]
Fin Si
Fin Pour
3) Fin minMax
Remarque
En Python, on peut calculer le min et le max d’une liste par:
- La fonction min(list)
- La fonction max(list)
60. Se7en - Creative Powerpoint Template 60
III. Les algorithmes récurrents
CHAPITRE V: ALGORITHMES STANDARDS
4. Calcul sur les suites Activité n°8
1) Ecrire un algorithme d’une procédure qui permet de calculer et d’afficher les n premiers termes de la suite U définie
par :
U0=3
Un = 2Un-1 - 4 , avec n≥1
2) Traduire cet algorithme en Python.
Algorithme
0) Début Proc termeSuite(n :entier)
1) U ← 3
2) Pour i de 1 à n faire
U ← 2*U - 4
Ecrire(U)
Fin Pour
3) Fin termeSuite
Remarque
Une valeur d’un terme donné dépend de la valeur du terme qui le précède. Il s’agit donc d’un algorithme récurrent
d’ordre 1.
61. Se7en - Creative Powerpoint Template 61
III. Les algorithmes récurrents
CHAPITRE V: ALGORITHMES STANDARDS
4. Calcul sur les suites Activité n°9
1) Ecrire un algorithme d’une procédure qui permet de calculer et d’afficher la valeur de Un de la suite U définie par :
U0=1 ; U1=1
Un = Un-1 + Un-2 , avec n≥2
2) Traduire cet algorithme en Python.
Algorithme
0) Début Proc calculUn(n :entier)
1) V ← 1; U ← 1
2) Pour i de 2 à n faire
tmp ← U + V
V ← U
U ← tmp
Fin Pour
3) calculUn ← U
4) Fin calculUn
Remarque
Il s’agit d’un traitement itératif. La valeur d’un terme dépend de deux termes précèdents: C’est un algorithme récurrent
d’ordre 2.
62. Se7en - Creative Powerpoint Template 62
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
1. Le calcul de PGCD Définition
Le plus grand commun diviseur de deux entiers a et b appelé aussi PGCD est le plus grand entier permettant de diviser
a et b. On le note PGCD (a, b).
Solution
Si a = 36, b = 15.
PGCD (36, 15) = PGCD (15, 6)
= PGCD (6, 3)
= PGCD (3, 0)
= 3
Pour calculer le PGCD de deux entiers a et b, nous pouvons appliquer la méthode d’Euclide qui repose sur le principe
suivant :
- Si b ≠ 0, alors PGCD (a, b) = PGCD (b, r) où r est le reste de la division euclidienne de a par b (0≤r<b).
- Si non, alors PGCD (a, 0) = a.
Comment calculer le PGCD?
Activité n°10
Calculer le PGCD(36, 15).
63. Se7en - Creative Powerpoint Template 63
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
1. Le calcul de PGCD Activité n°11
En se basant sur la méthode d’Euclide, écrire un algorithme d’une fonction intitulée pgcd qui permet de calculer le
PGCD de deux entiers.
Traduire cet algorithme en Python.
Algorithme
0) Début Fn pgcd(a, b :entier): entier
1) Tantque (b ≠ 0) faire
r ← a mod b
a ← b
b ← r
Fin Tantque
2) pgcd ← a
3) Fin pgcd
64. Se7en - Creative Powerpoint Template 64
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
2. Le calcul de PPCM Définition
Le plus petit commun multiple de deux entiers a et b appelé aussi PPCM est le plus petit entier multiple à la fois de a et
de b. On le note PPCM (a,b).
Solution
Si a = 3, b = 64 alors max = 64, min=3.
64 mod 3 = 1 ≠ 0 alors max = 64+64+3-3 = 128
128 mod 3 = 2 ≠ 0 alors max = 128+64+3-3 = 192
192 mod 3 = 0 alors, on s’arrête.
PPCM = max = 193 = 3
Pour calculer le PPCM de deux entiers a et b, nous pouvons appliquer l’algorithme suivant :
1) Déterminer le minimum (min) et le maximum (max) entre a et b.
2) Calculer le reste r de la division de max par min (r = max mod min).
3) Si r = 0, alors le max est le PPCM.
4) Si non, chercher le multiple successive de max (max = max+a+b-min), refaire l’algorithme à partir
de l’étape 2) jusqu’à avoir un multiple de min (r = 0)
Comment calculer le PPCM?
Activité n°12
Calculer le PPCM(3, 64).
65. Se7en - Creative Powerpoint Template 65
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
2. Le calcul de PPCM Activité n°13
En se basant sur la méthode du calcul de PPCM, écrire un algorithme d’une fonction intitulée ppcm qui permet de
calculer le PPCM de deux entiers.
Traduire cet algorithme en Python.
Algorithme
0) Début Fn ppcm(a, b :entier): entier
1) Si (a > b) alors
max ← a
min ← b
Sinon
max ← b
min ← a
Fin Si
2) Tantque (max mod min ≠ 0) faire
max ← max + a + b -min
Fin Tantque
3) ppcm ← max
4) Fin ppcm
66. Se7en - Creative Powerpoint Template 66
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
3. Les nombres premiers Définition
Un entier supérieur à 1 est dit premier s’il n’est divisible que par 1 et par lui même.
Activité n°14
Ecrire un algorithme et déduire la traduction en Python d’une fonction intitulée premier qui permet de vérifier si un entier
n (n>1) est premier ou non.
Algorithme
0) Début Fn premier(a :entier): booléen
1) i ← 2
2) Tantque (n mod i ≠ 0) et (i ≤ n div 2) faire
i ← i + 1
Fin Tantque
3) Si (i > n div 2) alors
premier ← Vrai
Si non
premier ← Faux
Fin Si
4) Fin premier
67. Se7en - Creative Powerpoint Template 67
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
4. Le calcul du factoriel Définition
La factorielle d’un entier n donné est le produit de tous les entiers de l’intervalle[1,n].
Le factoriel de n est noté n ! (n ! = n × (n - 2) × (n - 1) × ... × 4 × 3 × 2 × 1).
10 ! = 10 × 9 × 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1
10 ! = 3628800
Activité n°15
Ecrire un algorithme et déduire la traduction en Python d’une fonction intitulée factoriel qui permet de calculer la
factorielle d’un entier n.
Algorithme
0) Début Fn factoriel(n :entier): entier
1) f ← 1
2) Pour i de 1 à n faire
f ← f × i
Fin Pour
3) factoriel ← f
4) Fin factoriel
Exemple :
68. Se7en - Creative Powerpoint Template 68
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
5. La conversion entre les bases
de numération Les bases de numération sont:
- La base binaire (ou base 2) comprend 2 chiffres possibles {0 , 1}, elle est utilisée par les machines.
- La base décimale (ou base 10) comprend 10 chiffres possibles {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, c’est la base
couramment utilisée dans le calcul numérique traditionnel et la vie quotidienne.
- La base octale (ou base 8) comprend 8 chiffres {0, 1, 2, 3, 4, 5, 6, 7}.
- La base hexadécimale (ou base 16) comprend 16 symboles {0, 1, 2, 3, 4, 5, 6, 7, 8, 9,A, B, C, D, E, F}.
Présentation des bases de numération
a. Présentation
69. Se7en - Creative Powerpoint Template 69
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
5. La conversion entre les bases
de numération Pour convertir un nombre décimal en binaire, on suit les étapes suivantes :
1) Diviser n par 2.
2) Garder le reste et remplacer n par (n div 2).
3) Répéter les étapes 1) et 2) jusqu’à avoir n = 0.
Comment convertir du décimal en binaire ?
b. La conversion de
base 10 → base 2
Activité n°16
Convertir manuellement (38)10 en binaire.
Solution
On va dresser puis remplir le tableau suivant :
On va écrire les restes en ordre inverse de leur apparition, on obtient 100110.
En déduire que (38)10 = (100110)2
Quotient 38 19 9 4 2 1 0
reste 0 1 1 0 0 1
70. Se7en - Creative Powerpoint Template 70
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
5. La conversion entre les bases
de numération
b. La conversion de
base 10 → base 2
Activité n°17
Ecrire un algorithme et déduire la traduction en Python d’un programme qui permet de convertir un nombre entier positif
n en binaire.
Algorithme
0) Début conversion10_2
1) Saisir(n)
2) chercher10_2(n, R, c)
3) afficher(R, c)
4) Fin conversion10_2
-----------------------------------------------------------------------------
0) Début Proc chercher10_2(n :entier; var R :Tab; var c :entier)
1) c ← 0
2) Tantque (n ≠ 0) faire
c ← c + 1
R[c] ← n mod 2
n ← n div 2
Fin Tantque
3) Fin chercher
-----------------------------------------------------------------------------
0) Début Proc afficher ( R :Tab; c :integer)
1) Pour i de c à 1 (pas -1) faire
Ecrire(R[ c ])
Fin Pour
2) Fin afficher
71. Se7en - Creative Powerpoint Template 71
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
5. La conversion entre les bases
de numération Pour convertir un nombre décimal en hexadécimal, on suit les étapes suivantes :
1) Diviser n par 16.
2) Ranger le reste et remplacer n par (n div 16).
3) Répéter les étapes 1) et 2) jusqu’à avoir n = 0.
Comment convertir du décimal en hexadécimal ?
c. La conversion de
base 10 → base 16
Activité n°18
Convertir manuellement (142)10 en hexadécimal.
Solution
On va dresser puis remplir le tableau suivant :
On va écrire les restes en ordre inverse de leur apparition, on obtient 8E. (car 14 devient E en base 16)
En déduire que (142)10 = (8E)16
Quotient 142 8 1
reste 14 8
72. Se7en - Creative Powerpoint Template 72
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
5. La conversion entre les bases
de numération
c. La conversion de
base 10 → base 16
Activité n°19
Ecrire un algorithme et déduire la traduction en Python d’un programme qui permet de convertir un nombre entier positif
n en hexadécimal.
Algorithme
0) Début conversion10_16
1) Saisir (n)
2) chercher(n, R, c)
3) afficher(R, c)
4) Fin conversion10_16
----------------------------------------------------------------------------------
-
0) Début Proc chercher(n :entier; var R :Tab; var c :entier)
1) c ← 0
2) Tantque (n ≠ 0) faire
c ← c + 1
R[c] ← n mod 16
n ← n div 16
Fin Tantque
3) Fin chercher
0) Début Proc afficher ( R :Tab; c :integer)
1) Pour i de c à 1 (pas -1) faire
Si (R[c] dans [0..9]) alors
Ecrire(R[c])
Sinon
Ecrire(CHR(ORD(”A”)+R[c]-10))
Fin Si
Fin Pour
2) Fin afficher
73. Se7en - Creative Powerpoint Template 73
VI. Les algorithmes arithmétiques
CHAPITRE V: ALGORITHMES STANDARDS
5. La conversion entre les bases
de numération
Remarque
En Python, on peut utiliser les fonctions suivantes pour convertir un nombre entier (en base 10) dans une autre base:
- Fonction bin: permet de convertir un nombre entier en un nombre binaire.
- Fonction hex: permet de convertir un nombre entier en un nombre hexadécimal.
- Fonction oct: permet de convertir un nombre entier en un nombre octal.
En Python, on peut utiliser la fonction int pour convertir les différentes bases vers la base décimal.
Exemple :
Fonction bin Fonction hex Fonction oct