Bulletin Vert n°503
mars — avril 2013
Un embryon de langage symbolique
À la suite du baccalauréat 2012 qui a vu l’apparition de l’algorithmique dans les exercices se pose la question de disposer d’une manière standard d’écrire les algorithmes indépendamment des machines et des langages concernés.
Cette question ne date pas d’hier (voir par exemple http://www.epi.asso.fr/fic_pdf/dossiers/d07p087.pdf) et ne semble pas avoir reçu de réponse claire en tout cas au niveau scolaire. Je propose donc le formalisme suivant, libre évidemment à chacun d’en faire ce qu’il veut…
Types : Booléen, Réel, Entier (relatif), Caractère, Chaîne,
Instructions :
Affectation | Affecter à « variable » la valeur « valeur » | Pour donner un sens clair à l’écriture inévitable : « variable »\leftarrow « valeur » ou « variable » := « valeur » |
Opérateurs | ET, OU, NON +, –, *, /, Puissance =, < >, <, <=, >, >= |
Pour les expressions mathématiques, on utilise le formalisme habituel < > : différent (par exemple) |
Branchement | Si « condition » … Alors … Sinon … Fin Si |
Le Sinon n’est pas forcément utile |
Boucles | Tant que « condition » faire … Fin Tant que Répéter … jusqu’à ce que « condition » Pour « variable » variant de « valeur » à « valeur » par pas de « valeur » faire … Fin Pour |
Dans la boucle tant que, la condition est vérifiée AVANT la première exécution. Dans Répéter, la boucle est exécutée une fois, avant le test de la condition |
Entrées/Sorties | Entrer « variable » Afficher « variable » Retourner « variable valeur » |
Si on utilise un sous-programme. |
Exemple du sujet de Métropole, juin 2012
Variables | i et n sont des entiers naturels ; u est un réel |
Entrée | Entrer n |
Initialisation | Affecter à u la valeur 0 |
Traitement | Pour i variant de 1 à n Affecter à u la valeur u + 1 / i Fin pour |
Sortie | Afficher u |
Actualités et Informations
Base de ressources bibliographiques
Les Régionales de l’APMEP