2017-2018
Mathématiques-Python
Page0
Pendant votre cursus au lycée vous serez amenés à concevoir des programmes en
Python dans le cadre des cours de mathématiques.
Ce document a pour but de vous accompagner dans cet apprentissage.
Vous pouvez le suivre comme un tutoriel ou comme une aide pour réaliser des
programmes du cours de Mathématiques.
1-L’environnement de travail
2-Afficher un résultat dans la console
3-Les opérations
4-Les variables
5-Faire faire une entrée par l’utilisateur
6-Les comparaisons
7-Boucle, l’instruction : while
8-Condition, l’instruction : if
9-Plusieurs conditions
10-Boucle, l’instruction : for
11-Boucles et conditions
12-Les fonctions
13-Nombres aléatoires
14-Les listes
15-Les graphiques
2017-2018
Mathématiques-Python
1. L’environnement de travail
Sur le bureau de votre session (ou dans le dossier Maths) double cliquez sur l’icône :
Vous obtenez la fenêtre :
Il y a trois zones :
1. L’explorateur de fichier
2. La zone où on écrit le code
3. La zone où on voit le résultat de
l’exécution du code (console)
Et des icônes que l’on découvrira au fur et
à mesure…
Pour tout nouveau travail, il faudra commencer par créer un nouveau fichier :
On commence par cliquer sur
«nouveau fichier »
On choisit Python --lycée
RETOUR
2017-2018
Mathématiques-Python
On obtient : La fenêtre
Le bouton pour lancer
l’exécution du code
La zone de code contient une
première ligne qui importe une
bibliothèque « lycee » qui
contient tout ce qu’il faut pour
faire des programmes
Enregistrer son travail :
Comme dans la plupart des « logiciel » : Fichier / sauvegarder sous (pour un premier
enregistrement) ou bien simplement « enregistrer ».
Il fortement conseillé de créer un dossier dans votre espace (mes documents) pour
stocker les programmes que vous allez écrire et de leur donner des noms explicite. Par
exemple un programme qui calcule la distance entre deux points pourrait se nommer
« distance_deux_points »
RETOUR
2017-2018
Mathématiques-Python
2. Faire afficher quelque-chose dans la console :
L’instruction pour faire afficher quelque-chose dans la console est : print(…)
On teste ces instructions :
Ligne 3 : pour faire afficher du texte, on met celui-ci entre guillemets
Ligne 4 : on fait afficher le résultat de l’opération : 2+3+4
Ligne5 : on met dans la variable a le nombre 2
Ligne6 : on fait afficher le contenu de la variable a
Ligne 7 : on fait afficher du texte et un contenu de variable (séparés par une virgule)
Ligne8 : encore un mélange de texte et de variables (séparés par des virgules)
Le résultat dans la console :
RETOUR
2017-2018
Mathématiques-Python
3. Les opérations
Les quatre opérations : (+, - , * , / ), l’étoile pour la multiplication et le slash pour la
division
La racine carrée : sqrt(5) calcule
Les puissances : 3**2 calcule
Un exemple : comment calculer :
Le reste de la division de 7 par 3 s’obtient par l’instruction : 7%3 ( c’est 1 )
Le quotient (entier) de la division de 7 par 3 s’obtient par l’instruction : 7//3 (c’est 2)
4. Les variables
Une variable comme son nom l’indique permet de stocker des valeurs (ou du texte) qui
peuvent changer au cours d’un programme.
On peut les nommer avec une simple lettre ou avec un mot explicite pour bien les
identifier.
Par exemple :
L’instruction : a=2 met dans la variable a la valeur 2
L’instruction : abscissedeA=2 met dans la variable abscissedeA le nombre 2
Dans l’exemple ci-dessous on fait calculer la valeur de pour x=3
Dans l’exemple ci-dessous on fait calculer la longueur OA où O est l’origine d’un repère
orthonormé.
RETOUR
2017-2018
Mathématiques-Python
5. Demander une entrée à un utilisateur
Pour mettre l’entrée d’un utilisateur dans une variable a on utilise l’instruction :
a=input("texte expliquant ce qu’il faut faire")
Cependant, par défaut toute entrée est considérée comme du texte (il en va ainsi
dans tout les langages informatiques).
Si vous voulez que l’entrée soit interprétée comme un nombre entier, il faudra utiliser
l’instruction : a=int(input("texte expliquant ce qu’il faut faire"))
int pour integer (en anglais)
S’il s’agit d’un nombre réel : (nombre à virgule)
a=float(input("texte expliquant ce qu’il faut faire"))
Exemple : Sans forcer l’entrée à être lue comme un nombre :
Pour du texte la somme s’appelle
« concaténation » , j’ai rentré 2 et 3 et
dans la console je lis 23
Le même en forçant l’entrée à être lue comme un nombre entier :
RETOUR
2017-2018
Mathématiques-Python
6. Les comparaisons
Comparer deux nombres, consiste à répondre par vrai ou faux à un test de
comparaison :
Prenons par exemple x=25 et y= 52 :
À la question x > y la réponse est faux
Attention : l’instruction x=y met le
contenu de la variable y dans la
variable x
Tandis que x==y compare les valeurs
de x et y
7. Boucle, l’instruction : while
Le principe est le suivant :
while(tant que) une condition est vraie(un test) alors on exécute une série d’instructions
Par exemple : ce programme calcule la somme des 100 premiers nombres entiers
(1+2+…+100)
Il faut faire très attention à l’indentation (décalage) des instructions.
La syntaxe est la suivante :
s=0 On déclare deux variables initialisées à 0 pour s et
i=1 1 pour i .
while i<=100: Tant que i est inférieur à 100. Ne pas oublier les
« deux points »
s=s+i
On indente les deux instructions suivantes (cela se
i=i+1 fait automatiquement) s prend la valeur de s+i et
print(s) on augmente de 1 la valeur de i. Cela va se faire
jusqu'à ce que i soit égal à 100 .
On enlève l’indentation pour l’affichage du
résultat.
RETOUR
2017-2018
Mathématiques-Python
Si vous laissez l’instruction print(s) dans la boucle while(en l’indentant), le
programme affichera la valeur de s à chaque tour de boucle :
8. Condition, l’instruction if
Il existe plusieurs constructions possibles pour réaliser des instructions si(if) une
condition est réalisée.
Il faut faire très attention à l’indentation (décalage) des instructions.
if condition : if condition : if condition :
Instruction 1 Instruction 1 Instruction 1
Instruction 2 Instruction 2 Instruction 2
… … …
Suite du programme else : elif condition :
instruction 1 instruction 1
instruction 2 instruction 2
Une simple condition. Si
… …
celle-ci est vraie alors on
Suite du programme elif condition :
effectue les instructions
Instructions
indentées au dessous
else :
Puis on continue le Une condition. Si celle-ci Instructions
programme est vraie alors on effectue Suite du programme
les instructions indentées
Si elle est fausse, on au dessous
continue le programme Si condition
Sinon(else) on effectue …
les instructions indentées Sinon Si condition
au dessous …
Sinon Si condition
Puis on continue le
…
programme
Sinon
RETOUR
…
Suite du programme
2017-2018
Mathématiques-Python
Exemples :
Dans ce premier exemple, on teste si le résultat d’un calcul est positif pour pouvoir
calculer sa racine carrée
On a entré : 2
Dans ce second exemple on teste si un nombre entier est multiple de 7
Et enfin ce programme simule le lancé d’un dé à 6 faces numérotées de 1 à 6
L’instruction x=randint(1,6) choisit de façon aléatoire un entier entre 1 et 6
compris
RETOUR
2017-2018
Mathématiques-Python
9. Plusieurs conditions
Si on souhaite tester plusieurs conditions il convient d’utiliser les connecteurs logique
and (et) et or (ou)
if x>=0 and x<1 : Cela teste si le nombre x est dans
Instructions l’intervalle
Suite du programme
if x<0 or x>1 :
Cela teste si le nombre x est dans
Instructions
l’intervalle
Suite du programme
10. Boucles, l’instruction for
Lorsque l’on souhaite répéter un nombre donné de fois la même instruction ou le même
bloc d’instructions, la commande for est la plus appropriée.
for i in range(10) :
Pour i allant de 0 à 9 on affiche le
print(3*i)
résultat de 3*i
suite du programme
for i in range(2,10) :
Pour i allant de 2 à 9 on affiche le
print(3*i)
résultat de 3*i
suite du programme
for i in range(1,100,3) : Pour i allant de 1 à 99 par pas de 3
print(3*i) on affiche le résultat de 3*i
suite du programme
C'est-à-dire que les calculs se font
pour 1, 4, 7,10….
Exemple :
Ce programme affiche la table de multiplication de 17 :
RETOUR
2017-2018
Mathématiques-Python
11. Boucles et conditions
On peut mettre des conditions dans une boucle (et inversement)
Ce programme choisit 10000 fois des nombres réels aléatoires x et y compris dans
l’intervalle [-1; 1[ que l’on peut assimiler aux coordonnées d’un point A(x ; y), puis
calcule la longueur OA et si celle-ci est inférieure à 1 on incrémente un compteur sinon
on incrémente un second compteur et enfin on affiche les compteurs
L’instruction : uniform(min,max) renvoie un réel aléatoire entre [min ; max [
RETOUR
2017-2018
Mathématiques-Python
12. Les fonctions
Les fonctions en informatique permettent de délocaliser une série d’instructions, c’est
très utile surtout si on doit souvent faire appel à cette série d’instructions
Le principe :
def mafonction(paramètre) :
On définit la fonction
Instructions
return resultat
Le programme Dans le programme on demande
Instructions de mettre dans a le résultat de la
a=mafonction(b) fonction quand on envoie la valeur
c=mafonction(a) de b
…..
Attention à l’indentation
Exemples :
Dans cet exemple on utilise une fonction qui compare deux nombres entiers
RETOUR
2017-2018
Mathématiques-Python
Dans cet autre exemple on utilise une fonction pour calculer les images d’une liste de
réels pour une fonction au sens mathématique
13. Nombres aléatoires
Les instructions suivantes permettent de faire choisir, de façon aléatoire, par
l’ordinateur un nombre dans un intervalle. Cette instruction est très utilisée en
probabilité et en statistique
L’instruction a=random() met dans a un réel de l’intervalle [0 ; 1[
L’instruction a=random(min,max) met dans a un réel de l’intervalle [min ; max[
L’instruction a=randint(min,max) met dans a un entier de l’intervalle [min ; max]
(max est compris )
14. Les listes
Les listes sont très utiles en programmation. On est souvent amené à faire des calculs
sur tous les éléments d’une liste avec des boucles (tableaux de valeurs pour une
fonction, calculs sur les effectifs en statistique…)
Une liste est donc un tableau à une dimension :
23 2 1 0 45 87 12 25 17 …
Supposons que cette liste ait pour nom : maliste Pour avoir accès à un élément de
23 est l’élément d’indice 0 de maliste maliste on écrit :
2 est l’élément d’indice 1 de maliste
a=maliste[4]
…
25 est l’élément d’indice 7 de maliste la valeur de a est donc 45
RETOUR
2017-2018
Mathématiques-Python
Création de listes
Il y a plusieurs façons de créer des listes
A la main :
maliste=[23,2,1,0,45,87,12,25,17]
On la déclare vide et on la remplit avec une boucle :
maliste=[] L’instruction [Link](i) met
for i in range(1,50,2) : dans la liste la valeur de i
[Link](i)
Cette liste contient donc tous les nombres
impairs jusqu’à 49
Création automatique :
maliste=range(n) crée une liste d’entiers de 0 à
maliste=range(2,n) crée une liste d’entiers de 2 à
maliste=range(1,n,2)crée une liste d’entiers de 1 à avec un pas de 2
maliste=[Link](1,n,0.2)crée une liste de réels entre
1 et n avec un pas de 0.2
Pour avoir accès à la longueur (nombre d’éléments) d’une liste on utilise l’instruction
N=len(maliste)
Pour trier une liste : [Link]() (ordre croissant)
[Link](reverse=True) (ordre décroissant)
Ou bien nouvelle_liste=sorted(ancienne_liste) pour avoir une liste triée dans une
autre liste (nouvelle_liste=sorted(ancienne_liste,reverse=True)) (à l’envers)
Exemples :
Ce programme calcule les images des réels de maliste par la fonction x²-1
Il y a une spécificité ici :
La boucle se fait sur les éléments de
maliste ( for i in maliste )
C’est très pratique
RETOUR
2017-2018
Mathématiques-Python
Ce programme calcule la fréquence d’apparition de pile sur 500 lancés d’une pièce de
monnaie :
15. Les graphiques
Pour tracer la courbe représentative d’une fonction sur un intervalle, on utilise
l’instruction :
[Link](x,f(x))
[Link]()
En ayant au préalable créé une liste
des abscisses x
[Link](True), affiche la grille
[Link]("abscisse(x)"),
affiche du texte pour l’axe des abscisses
On peut aussi faire afficher une croix sur les points qui permettent de dessiner la
courbe :
RETOUR
2017-2018
Mathématiques-Python
On peut aussi utiliser des listes et des fonctions :
Voici un programme qui affiche les courbes représentatives des fonctions x²-3 et –x²+3
sur l’intervalle [-2 ; 2 ]
Les points sont marqués par des croix rouges (rx) et des billes bleues (bo)
Quelques exemples en statistique :
Un prélèvement, par le service des fraudes, de 200 boîtes de fromage contenant en principe
170 g de fromage a donné les résultats suivants
Poids 166.5 168 168.5 169 169.5 170 170.5 171 171.5 172
effectifs 1 6 12 21 36 48 34 18 14 10
Représentation d’un nuage de points :
On crée deux listes : poids et effectif
RETOUR
2017-2018
Mathématiques-Python
Courbe des effectifs cumulés croissants :
On crée une 3ème liste qui doit contenir les effectifs cumulés croissants, on la fabrique « à
la main » ou en utilisant une boucle..
Pour la courbe des effectifs cumulés décroissants, il suffit de créer une nouvelle liste
et d’y mettre la précédente triée(sorted) dans l’ordre décroissant avec l’instruction :
eff_cumul_decroissant=[]
eff_cumul_decroissant=sorted(eff_cumul_croissant,reverse=True)
Le programme ci-dessous dessine les courbes des effectifs cumulés croissants et
décroissants
RETOUR
2017-2018
Mathématiques-Python
La courbe des fréquences cumulées croissantes :
Il suffit là encore de créer une nouvelle liste et d’y mettre la liste des effectifs cumulés
croissants divisée par l’effectif total (200)
Le programme ci-dessous affiche cette courbe
RETOUR
2017-2018
Mathématiques-Python
RETOUR