Wikipedia dixit :
Python est apprécié par les pédagogues qui y trouvent un langage où la syntaxe, clairement séparée des mécanismes de bas niveau, permet une initiation plus aisée aux concepts de base de la programmation.
Dans le cadre d’une structure « soutien-excellence » j’ai la chance d’animer pour des élèves de troisième, un module d’initiation à la programmation d’algorithmes numériques.
Oh ! nous y allons doucement, et si nous nous sommes surtout amusé la première fois avec l’IDLE, l’environnement intégré à Python, nous avons aujourd’hui pénétré un peu dans la magie de la programmation.
def table(x): "la table de x" i=0 while (i<10): i=i+1 print i,"*",x,"=",x*i def tables(x): "les x premières tables" i=0 while (i<x): i=i+1 table(i) print 30*"_"
Pas grand chose en effet dans ce petit bout de code :
Deux procédures définies par le mot clef « def ». Elles contiennent chacune une boucle « while » (tant que…)
(Ne me reprochez pas de ne pas utiliser « for », je m’adresse à des débutants)
Une procédure est une partie de programme indépendante des autres procédures.
La première procédure appelé « table » attend une valeur entière: La première ligne entre guillemets est une documentation de la procédure. Une fois le programme chargé et exécuté (Run Module F5), si l’on tape dans l’iIDLE « table(« …
Python a la gentillesse de nous dire ce qu’il attend !
- Que fait cette procédure ?
Elle crée une boite une variable i dans laquelle elle range qu’elle initialise avec la valeur 0. (i=0)
Et tant que la variable i est inférieure à 10 :
- Elle remplace le contenu de la boite la variable i par i+1.
- Elle affiche successivement i, le signe multiplié, le nombre de départ x, le signe « égal » est le produit de x par i.
On sortira donc du « tant que » quand i sera égal à 11 pour n’afficher que les tables de 1 à 10 :
La deuxième procédure tables(x), elle affichera les tables de 1 à x :
Vous en savez assez pour étudier vous-même son fonctionnement !
- Remarque
J’aurais aimé (mais ce ne fût pas le cas) devoir répondre à une question concernant la boite variable i présente dans les deux procédures, avec des valeurs différentes… et embrayer sur le caractère local des variables : les deux variables i sont différentes, chaque procédure à la sienne…
J’ai oublié de donner du travail pour la prochaine fois : construire le procédure matrix qui fait ça :