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

 

Les Journées Nationales
L’APMEP

Brochures & Revues
Ressources

Actualités et Informations
Base de ressources bibliographiques

 

Les Régionales de l’APMEP