
Écrivez vos algorithmes en pseudo-code français, exécutez-les, suivez-les pas à pas… puis retrouvez-les en Python, sans changer d'outil.
L'algorithmique s'apprend souvent sur papier, loin de l'éditeur où l'on programmera ensuite. Cette extension rapproche les deux mondes : le pseudo-code tel qu'il est enseigné en France (SI … ALORS … FINSI, POUR i DE 0 À n - 1, x ← 3) devient un langage vivant, que l'on exécute, que l'on observe instruction par instruction et que l'on traduit en Python d'un clic. Les bonnes habitudes de Python (noms en snake_case, commentaires #, indices à partir de 0) se prennent dès le premier algorithme.
Fonctionnalités
- Exécution immédiate : F5 lance l'algorithme ;
LIRE et ÉCRIRE dialoguent dans le terminal intégré.
- Débogage pas à pas : F10 avance instruction par instruction, variables, tableaux et pointeurs sous les yeux.
- Table de trace automatique : la valeur de chaque variable après chaque instruction, prête à coller dans un support de cours.
- Organigramme : l'algorigramme de l'algorithme et de chacune de ses fonctions, exportable en image.
- Traduction en Python : un programme Python exécutable, fidèle à l'algorithme, ouvert côte à côte.
- Exercices auto-corrigés : des tests écrits en commentaire, vérifiés d'un clic.
- Erreurs expliquées en français : chaque message indique la ligne, la cause et la correction.
- Écriture assistée : coloration, autocomplétion, structures prêtes à remplir, mots-clés mis en majuscules pendant la frappe.
Démarrage rapide
Créez un fichier .algo, ou ouvrez la palette de commandes (Ctrl+Maj+P) et choisissez Algorithmique: Nouvel algorithme.
Écrivez votre algorithme :
ALGORITHME moyenne_deux_notes
VARIABLES
note1, note2 : RÉEL
DÉBUT
LIRE(note1)
LIRE(note2)
ÉCRIRE("Moyenne : ", (note1 + note2) / 2)
FIN
Appuyez sur F5 pour l'exécuter, ou sur F10 pour le suivre pas à pas.
Le guide Bien démarrer en algorithmique s'ouvre à l'installation ; il reste accessible dans Aide › Bienvenue.
En détail
Exécution et débogage

Les résultats s'affichent dans le terminal Algorithme. Une saisie invalide (« abc » pour un ENTIER) est simplement redemandée, et un algorithme qui ne s'arrête pas s'interrompt avec Ctrl+C.
Le pas à pas s'appuie sur le débogueur de VS Code : points d'arrêt, panneau Variables où tableaux, structures et pointeurs se déplient, survol d'une variable pour lire sa valeur, panneau Espion pour suivre une expression, pile des appels pour comprendre la récursivité. En cas d'erreur, l'exécution s'arrête sur la ligne fautive, avec les valeurs du moment.
Table de trace

L'algorithme s'exécute et un tableau relève, après chaque instruction, la valeur de chaque variable et ce qui a été affiché. Les valeurs qui viennent de changer sont surlignées ; un double-clic ramène à l'instruction correspondante. Le tableau se copie dans Word, Excel ou PowerPoint, ou s'ouvre en Markdown.
Organigramme

Ovales pour le début et la fin, rectangles pour les instructions, parallélogrammes pour les entrées-sorties, losanges pour les tests : l'algorigramme de chaque routine respecte les conventions des cours. Il s'enregistre en image SVG et fonctionne sans connexion Internet.
Traduction en Python

Le même algorithme en Python, avec les mêmes noms, les mêmes commentaires et les mêmes indices. Le code obtenu s'exécute tel quel.
| Pseudo-code |
Python |
POUR i DE 0 À n - 1 FAIRE |
for i in range(n): |
LIRE(age) |
age = int(input()) |
ÉCRIRE("Total : ", s) |
print(f"Total : {s}") |
ÉCRIRE(t[i], " ") SANS RETOUR |
print(f"{t[i]} ", end="") |
SI p = NUL ALORS |
if p is None: |
STRUCTURE Cellule |
@dataclass class Cellule: |
PROCÉDURE echanger(VAR a, VAR b) |
def echanger(a, b): … return a, b |
Exercices auto-corrigés

Les tests s'écrivent en commentaire, n'importe où dans le fichier : à gauche de la flèche, les valeurs saisies ; à droite, le texte attendu à l'affichage.
# TEST : 12 8 → Moyenne : 10
# TEST "notes égales" : 15 15 → Moyenne : 15
# TEST : "Jean Dupont" 25 → Bonjour Jean Dupont
Un clic sur Vérifier les tests inscrit ✔ réussi ou ✘ obtenu « … » au bout de chaque ligne. Le formateur écrit les tests, l'apprenant écrit l'algorithme.
Erreurs et conseils

Comme en Python, une variable n'a pas de valeur tant qu'on ne lui en a pas donné une : l'utiliser avant arrête l'exécution, avec un message qui nomme la variable et propose la correction. Pendant la frappe, le problème est déjà souligné, en rouge quand il est certain, en jaune quand il ne se produit que dans certains cas.
D'autres conseils, qui ne bloquent jamais l'exécution, préparent aux exigences de Python : boucle sans fin probable, variable inutilisée, compteur de POUR modifié dans la boucle, noms en snake_case, constantes en MAJUSCULES, noms sans accents.
Écriture assistée
- Structures complètes : tapez
si, pour, tantque, repeter, selon, fonction, procedure, structure, pourtab… puis Entrée.
- Autocomplétion : mots-clés, variables et fonctions du fichier, champs d'une structure après
p. ou p↑., fermeture du bloc ouvert proposée en premier.
- Mise en forme à la frappe :
si devient SI, debut devient DÉBUT, <- devient ←. Accents facultatifs : DEBUT et DÉBUT sont équivalents.
- Écritures des cours acceptées :
tab[8] : ENTIER, POUR i ALLANT DE 1 À n, abréviations VAR, CONST, STRUCT, PROC.
Le langage en un coup d'œil
|
|
| Structure |
ALGORITHME, CONSTANTES, VARIABLES, DÉBUT … FIN, FONCTION … FINFONCTION, PROCÉDURE … FINPROCÉDURE, STRUCTURE … FINSTRUCTURE |
| Types |
ENTIER, RÉEL, CHAÎNE, CARACTÈRE, BOOLÉEN, TABLEAU[10] DE ENTIER ou t[10] : ENTIER, POINTEUR SUR T |
| Instructions |
x ← 3, LIRE(x), ÉCRIRE(…), ÉCRIRE(…) SANS RETOUR, RETOURNER, SORTIR, CONTINUER |
| Conditions |
SI … ALORS … SINON SI … SINON … FINSI, SELON … CAS … DÉFAUT … FINSELON |
| Boucles |
POUR i DE 0 À n - 1 [PAS p] FAIRE … FINPOUR, TANT QUE … FAIRE … FINTANTQUE, RÉPÉTER … JUSQU'À CE QUE …, POUR CHAQUE x DANS t |
| Opérateurs |
+ - * / ^ DIV MOD, = <> < > <= >=, ET OU NON |
| Pointeurs |
NOUVEAU(Cellule), p↑.champ, NUL, LIBÉRER(p) |
| Commentaires |
# sur une ligne, """sur plusieurs lignes""" |
Un tableau de n cases est numéroté de 0 à n − 1, comme en Python ; le réglage algorithmique.premierIndice permet de revenir à la numérotation à partir de 1. La syntaxe complète figure dans l'aide-mémoire, ouvert par l'icône livre en haut de l'éditeur.
Raccourcis et commandes
| Action |
Raccourci |
| Exécuter |
F5 |
| Démarrer le pas à pas, puis instruction suivante |
F10 |
| Entrer dans la fonction appelée / en sortir |
F11 / Maj+F11 |
| Continuer jusqu'au point d'arrêt suivant |
F5 (pendant le pas à pas) |
| Arrêter |
Maj+F5 (pas à pas), Ctrl+C (terminal) |
| Poser un point d'arrêt |
F9, ou clic dans la marge |
| Commenter / décommenter |
Ctrl+/ |
| Proposer les complétions |
Ctrl+Espace |
Sur Mac : Cmd (⌘) à la place de Ctrl, Option (⌥) à la place d'Alt.
Toutes les commandes sont réunies au même endroit, de quatre façons : les liens affichés au-dessus de la ligne ALGORITHME, le bouton Algorithmique de la barre d'état, le sous-menu Algorithmique du clic droit et la palette de commandes (rubrique Algorithmique).
| Commande |
Rôle |
| Exécuter l'algorithme / Exécuter pas à pas |
lancer l'algorithme ouvert |
| Table de trace |
valeurs des variables après chaque instruction |
| Organigramme |
algorigramme de chaque routine, export SVG |
| Traduire en Python |
programme Python équivalent, ouvert à côté |
| Vérifier les tests (# TEST) |
corriger l'algorithme avec ses tests |
| Mettre en forme les mots-clés |
casse, accents et flèches dans tout le fichier |
| Nouvel algorithme / Ouvrir un exemple… |
partir d'un modèle ou de l'un des six exemples |
| Aide-mémoire du langage / Guide « Bien démarrer » |
se repérer |
Réglages
| Réglage |
Rôle |
Valeur par défaut |
algorithmique.premierIndice |
numéro de la première case des tableaux et des chaînes : 0 (comme Python) ou 1 (algorithmique classique) |
0 |
algorithmique.casse.motsClefs |
majuscules (SI … FINSI), capitalisés (Si … FinSi) ou inchangée |
majuscules |
algorithmique.casse.types |
même choix pour les types (ENTIER, RÉEL…) |
majuscules |
algorithmique.casse.automatique |
mettre les mots-clés en forme pendant la frappe |
activé |
algorithmique.affectation.automatique |
remplacer <- par ← |
activé |
algorithmique.conseils |
souligner les conseils |
activé |
algorithmique.liensRapides |
afficher les liens au-dessus de l'algorithme et des tests |
activé |
algorithmique.trace.lignesMax |
nombre maximal de lignes d'une table de trace |
500 |
- Prête pour la classe : six exemples commentés (moyenne, tri par sélection, recherche dichotomique, tours de Hanoï, liste chaînée, arbre binaire), un aide-mémoire à distribuer et des exercices corrigés automatiquement.
- Adaptable à votre cours : numérotation des tableaux à partir de 0 ou de 1, mots-clés en majuscules ou capitalisés, accents et abréviations facultatifs.
- Installation sans Internet : le fichier
.vsix s'installe depuis la vue Extensions, menu … › Installer à partir d'un VSIX….
Confidentialité
L'extension ne collecte aucune donnée et n'utilise pas le réseau. Les algorithmes sont exécutés par un interpréteur intégré qui n'a accès ni aux fichiers ni au système ; l'extension fonctionne donc aussi en mode restreint.
Limites connues
- Les entiers sont exacts jusqu'à ± 9 007 199 254 740 991 ; au-delà, une erreur « Dépassement de capacité » est signalée.
- La récursivité est limitée à 10 000 appels imbriqués.
- Un algorithme ne lit ni n'écrit de fichiers.
- Le pas à pas nécessite un fichier enregistré.
Auteur et assistance
Conçue et utilisée en cours par Jean-Claude AZIAHA, Formateur & Développeur agentique Web/GenApp | Product Builder.
Une question, une suggestion, un problème ? Écrivez à aziaha.formations@gmail.com.
Licence
Licence MIT © 2026 Jean-Claude AZIAHA. Organigrammes dessinés avec Mermaid (licence MIT).
| |