Application Python en Seconde
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteOuvrir l'application Python et créer un script
Au programme de Seconde, l'algorithmique passe par Python. La NumWorks embarque MicroPython 1.17 (compatible Python 3.4) : c'est le même langage que celui utilisé en classe, avec quelques modules en moins. L'application Python permet d'écrire des scripts, de les enregistrer sur la calculatrice et de les exécuter dans une console interactive.
Pour lancer l'application, appuie sur , déplace-toi sur la vignette Python avec les flèches, puis valide avec OK. Tu arrives sur la liste des scripts enregistrés. Quatre scripts d'exemple sont fournis d'origine : squares.py, parabola.py, mandelbrot.py et polynomial.py.

| Ajouter un script | Sélectionner la case Ajouter un script en bas de la liste, puis OK |
| Renommer un script | Sélectionner l'icône de réglages à droite du nom, OK, choisir Renommer le script |
| Supprimer un script | Même menu de réglages, choisir Supprimer le script |
| Ouvrir l'éditeur | Sélectionner le nom du script et appuyer sur OK |
Astuce
Tu peux stocker jusqu'à 8 scripts sur la calculatrice. Donne à chaque script un nom court et explicite (aire, seuil, moyenne…) : il apparaîtra dans la liste avec l'extension .py ajoutée automatiquement.
Saisir des lettres et des symboles dans l'éditeur
Dans l'éditeur de script, le clavier numérique se transforme en clavier alphabétique grâce aux touches alpha et shift. Chaque touche porte en haut une étiquette bleue (la lettre accessible avec alpha) et une étiquette orange (le caractère accessible avec shift).
| alpha + lettre | Tape une minuscule (étiquette bleue de la touche) |
| shift alpha + lettre | Tape une majuscule |
| alpha alpha | Verrouille le mode alpha (toutes les touches deviennent des lettres) |
| shift (en mode verrouillé) | Bascule entre minuscules et majuscules |
| alpha (à nouveau) | Sort du mode verrouillé |
Écrire le mot def
Pour taper les trois lettres d, e, f sans avoir à appuyer trois fois sur alpha, verrouille le clavier alphabétique :
alpha alpha i , xy
La lettre d est sur la touche i (étiquette bleue D), e sur la touche virgule , (étiquette E), f sur xy (étiquette F). Quand tu as fini de taper du texte, appuie une fois sur alpha pour repasser en mode chiffres et opérateurs.
Astuce
Plutôt que de chercher chaque lettre, utilise la touche dans l'éditeur : elle ouvre un menu Boucles et Tests qui insère directement les blocs for, while, if tout prêts. Tu n'auras qu'à compléter les variables.
Écrire une fonction et l'exécuter
En Seconde, tu apprends à écrire des fonctions Python avec def et return. Une fonction prend des paramètres entre parenthèses, effectue des calculs et renvoie un résultat.
Une fonction qui calcule l'aire d'un rectangle
Crée un nouveau script nommé aire (Ajouter un script → OK → taper aire en mode alpha verrouillé → OK). Ouvre-le, puis tape :
def aire(L, l):
return L * l
L'éditeur indente automatiquement après les deux-points. Pour la multiplication, la touche × insère directement le caractère * attendu par Python. De même, la touche ÷ insère /. Les parenthèses et la virgule sont accessibles directement, sans passer par alpha.

Pour exécuter la fonction, descends en bas de la liste des scripts et sélectionne Console d'exécution. La console affiche le triple chevron >>> qui invite à entrer une commande. Comme l'option Importation auto est activée par défaut sur chaque nouveau script, la commande from aire import * est lancée automatiquement à l'ouverture : tu peux donc utiliser aire directement.
Tester aire(3, 4) dans la console
Dans la console, tape :
aire(3, 4)
puis EXE. La calculatrice affiche 12 : la fonction a bien renvoyé $3 \times 4$. Essaie aussi aire(2.5, 6) (avec un point comme séparateur décimal en Python) : tu obtiens 15.0.

Attention
Ne confonds pas (flèche courbe en haut à droite, quitte l'écran en cours) et (touche en fin de la rangée alpha, efface le dernier caractère). Pour effacer une lettre que tu viens de taper dans l'éditeur, utilise . Si tu appuies sur , tu sortiras de l'éditeur (les modifications restent sauvegardées).
Boucles et conditions avec la touche Toolbox
Le BO de Seconde demande de savoir programmer une boucle bornée (mot-clé for, avec un nombre de répétitions connu à l'avance), une boucle non bornée (mot-clé while, qui s'arrête quand une condition est remplie) et une instruction conditionnelle (if / else). La NumWorks insère ces blocs tout prêts via la touche de l'éditeur.
| → Boucles et Tests → for | Insère for i in range(N): |
| → Boucles et Tests → while | Insère while ...: |
| → Boucles et Tests → if | Insère if ...: (et propose else, elif) |
Boucle for : moyenne d'une liste de notes
Crée un script nommé moyenne :
def moyenne(notes):
s = 0
for x in notes:
s = s + x
return s / len(notes)
Dans la console, teste avec la série $12,\ 14,\ 15,\ 16,\ 10,\ 18,\ 13$ :
moyenne([12, 14, 15, 16, 10, 18, 13])
Résultat : 14.0. La fonction len(notes) renvoie le nombre d'éléments de la liste, ici $7$, et $\dfrac{12+14+15+16+10+18+13}{7} = 14$.
Boucle while : recherche d'un seuil
On place 1000 € sur un compte rémunéré à 3 % par an. Au bout de combien d'années la somme dépasse-t-elle 1500 € ? Le calcul à la main demande de tester $1000 \times 1{,}03^{n}$ jusqu'à ce qu'il dépasse $1500$. Python le fait en quelques lignes :
def seuil():
capital = 1000
n = 0
while capital < 1500:
capital = capital * 1.03
n = n + 1
return n

L'appel seuil() renvoie 14 : il faut 14 années pour que le capital dépasse 1500 €. Tu retrouveras exactement le même résultat avec l'application Suites de la calculatrice — la différence, c'est qu'ici tu maîtrises la boucle ligne par ligne.
Instruction conditionnelle : tester la parité
def parite(n):
if n % 2 == 0:
return "pair"
else:
return "impair"
L'opérateur % (à insérer depuis le menu → Catalogue) renvoie le reste de la division euclidienne : $n \% 2$ vaut $0$ si $n$ est pair, $1$ sinon. Teste parite(7) : la console affiche 'impair'.
Attention
En Python, le test d'égalité s'écrit avec deux signes égaux : ==. Un seul = sert uniquement à l'affectation (mettre une valeur dans une variable). Si tu écris if n = 2: au lieu de if n == 2:, la console renverra une erreur de syntaxe.
Importer un module : exemple avec math
Pour disposer des fonctions usuelles (racine carrée, cosinus, exponentielle, factorielle…) à l'intérieur d'un script Python, il faut importer un module. Le plus courant en Seconde est le module math.
Calculer une longueur avec le théorème de Pythagore
Dans un nouveau script nommé hypoten :
from math import sqrt
def hypotenuse(a, b):
return sqrt(a*a + b*b)
L'instruction from math import sqrt rend la fonction sqrt (racine carrée) directement utilisable dans le script. Teste hypotenuse(3, 4) : la console renvoie 5.0, la longueur attendue dans un triangle rectangle dont les côtés de l'angle droit mesurent $3$ et $4$.
| sqrt(x) | Racine carrée $\sqrt{x}$ |
| pi | Constante $\pi \approx 3{,}1415$ |
| e | Constante $\mathrm{e} \approx 2{,}7182$ |
| cos(x), sin(x), tan(x) | Trigonométrie en radians |
| floor(x) | Partie entière inférieure |
| factorial(n) | Factorielle $n!$ |
Attention
Dans le module math, les fonctions cos, sin et tan travaillent en radians, pas en degrés — contrairement à l'application Calculs qui est en mode degrés au lycée. Pour calculer $\cos(60°)$ depuis Python, deux solutions : convertir d'abord avec radians(60), ou utiliser l'expression $\cos(60°) = \cos\left(\dfrac{\pi}{3}\right)$.
from math import cos, pi, radians
cos(radians(60)) # renvoie 0.5
cos(pi/3) # renvoie aussi 0.5
Remarque
La fonction log(x) de MicroPython calcule le logarithme népérien $\ln(x)$, pas le logarithme décimal. Pour le logarithme décimal, utilise log10(x). Cette particularité disparaît si tu utilises le module sur un ordinateur, mais sur la NumWorks elle est bonne à connaître.
Astuces transversales
Quelques gestes reviennent à chaque séance et méritent d'être automatisés dans l'application Python :
| var (dans l'éditeur ou la console) | Affiche la liste des fonctions et variables globales définies dans tes scripts importés |
| var (autocomplétion) | Quand l'éditeur affiche une suggestion en gris, / proposent les autres complétions possibles |
| ou OK | Accepte la suggestion d'autocomplétion en gris |
| (dans la console) | Interrompt l'exécution du script en cours |
| (appui long) | Force l'arrêt d'une boucle infinie qui ne répond plus |
Astuce
Si une boucle while tourne indéfiniment (par exemple parce que la condition d'arrêt n'est jamais atteinte), tu n'as pas besoin d'éteindre la calculatrice. Maintiens enfoncée pendant deux ou trois secondes, et relâche : la console reprend la main et te laisse corriger le script.
Remarque
Tous tes scripts Python sont conservés entre deux allumages de la calculatrice. Ils restent même quand tu actives le mode examen (ils sont seulement temporairement masqués) et réapparaissent à la sortie du mode examen, après reconnexion à un ordinateur. Tu peux donc préparer tes scripts à la maison sans craindre de les perdre.