Ecrire son premier algorithme

Nous allons apprendre ensemble à créer un premier script avec l'application Python de la calculatrice NumWorks.

Lorsque l'on accède à l'application, un liste de fichiers avec la terminaison .py apparaît à l'écran. Ces fichiers sont des scripts, et ce sont eux qui vont contenir les algorithmes. Quelques scripts sont présents par défaut sur le calculatrice, il est tout à fait possible de les lire, de les modifier ou de les exécuter, mais nous allons créer notre propre script afin de bien comprendre les différentes étapes de l'écriture d'un algorithme.

Ajouter un script

Pour créer un nouveau script, on sélectionne dans l'application Python la cellule "Ajouter un script" qui se trouve en bas de la liste. Nous sommes invités à le nommer : appelons-le 'test.py'.

Un cadenas s'affiche en haut à droite de l'écran, à côté de "alpha" en minuscule, ce qui signifie que le mode alphabétique est bloqué et qu'il est possible d'écrire directement avec les touches de la calculatrice.

Lorsque le nom du script est validé (touche ok), il suffit de sélectionner 'test.py' et de valider à nouveau pour accéder à l'éditeur.

Ajouter un script sur l'application Python

Remarques :

L'éditeur

C'est dans cet éditeur que nous allons pouvoir écrire notre algorithme.

Dans un script, on peut définir des fonctions. Les fonctions sont une série d'instructions qui manipulent des variables d'entrée, et y associent des données de sortie.

Représentation schématique d'une fonction

Nous allons par exemple créer une fonction qui permet de calculer automatiquement la moyenne de deux nombres a et b : a et b sont les variables d'entrée, et la sortie correspond à la valeur recherchée.

Il est possible de quitter l'éditeur de script à tout moment, pour l'essayer par exemple : le contenu sera automatiquement conservé !

Définir une fonction

Définir une fonction

Pour définir une fonction, la syntaxe est essentielle :

def nom_fonction (variable1, variable2, …):

Nous allons donner à notre fonction un nom explicite. Rappelons que pour faire fonctionner cette fonction, nous avons besoin de deux variables d'entrée : a et b.

Pour écrire plus vite, l'instruction "def" est disponible dans la boîte à outils, accessible avec la touche toolbox, menu Fonctions.

En revenant à la ligne avec la touche exe, on remarque que le curseur est légèrement décalé vers la droite : c'est l'indentation.

L'indentation est essentielle dans un algorithme pour pouvoir distinguer les blocs d'instructions. Toutes les lignes de code qui appartiendront à notre fonction seront indentées afin de bien les distinguer. Cela fait partie de la syntaxe.

L'objectif de notre programme est de renvoyer la moyenne de nos deux variables. On utilise alors l'instruction "return" accompagnée de l'information que renvoie la fonction : une valeur, une variable, un calcul, une chaîne de caractères, une liste, etc…

L'instruction "return" est aussi accessible depuis la boîte à outils pour écrire plus rapidement.

A noter que l'on peut tout à fait définir plusieurs fonctions dans un même script.

La fonction renvoie la moyenne des deux variables
Exécuter le script

La console

Pour faire fonctionner notre programme, il faut quitter l'éditeur avec la touche back et sélectionner les points de suspension à côté du nom de notre script puis "Exécuter le script".

Notre script est alors importé et l'invite >>> signifie que nous pouvons entrer une commande.

Nous allons pouvoir appeler notre fonction en précisant les variables avec lesquelles l'appliquer.

Pour gagner du temps, il est possible d'aller chercher la fonction dans le menu variable, touche var de la calculatrice. Il ne reste plus qu'à compléter avec les valeurs souhaitées et à exécuter.

Exécuter un script dans la console

Il est possible que la calculatrice renvoie un message d'erreur en arrivant sur la console. Généralement le numéro de la ligne posant problème est indiqué et il faut vérifier que le programme ne comporte pas d'erreur.

Parmi les erreurs courantes : l'oubli de l'indentation ou des ":" à la fin de la définition de la fonction. Ceux-ci sont générés automatiquement mais il peut arriver de les effacer par mégarde.

Les modules

La calculatrice NumWorks est équipée d'un certain nombre de modules, des bibliothèques de fonctions utilisées fréquemment. Pour y accéder, il faut importer le module souhaité au début du script. Le module math contient la plupart des fonctions mathématiques nécessaires, il est importé systématiquement. Par exemple, il permet d'utiliser la fonction sqrt(x) afin de calculer une racine carrée.

Par commodité, on peut importer la totalité des fonctions du module à l'aide de l'instruction suivante : from nom_module import *.

D'autres modules peuvent s'avérer utiles en fonction de l'objectif recherché : cmath (nombres complexes), matplotlib (graphiques), random (nombres aléatoires), kandinsky (colorer des pixels), ion (état des touches), time (horloge), turtle (piloter une tortue).

Les modules et leurs fonctions sont accessibles dans la boîte à outils toolbox, menu Fonctions.

Mes scripts sur le compte NumWorks

Il est possible d'écrire un script et de le tester directement en ligne en se connectant sur son compte NumWorks et en sélectionnant le menu "Mes scripts".

Vous pourrez alors créer, modifier, sauvegarder vos scripts, et pourquoi pas les partager avec vos amis ou vos élèves !


Plus d'informations sur les modules dans le manuel d'utilisation.

Pour consulter nos fiches d'activités autour de Python, cliquez ici.

Lors de votre visite sur notre site, NumWorks a besoin de déposer des "cookies" ou d'utiliser d'autres technologies pour recueillir des données vous concernant afin de :

A l'exception des Cookies essentiels au fonctionnement du site, NumWorks vous laisse le choix : vous pouvez accepter les Cookies de mesure d'audience en cliquant sur le bouton "Accepter et continuer", ou refuser ces Cookies en cliquant sur le bouton "Continuer sans accepter" ou en continuant votre navigation. Vous pourrez mettre à jour votre choix à tout moment en cliquant sur le lien "Gérer mes cookies" en bas de page. Pour plus d'informations, vous pouvez consulter notre politique de cookies.