Aller au contenu
Outil gratuit

Créer un structogramme en ligne : éditeur de diagrammes de Nassi-Shneiderman

Crée des structogrammes en ligne sous forme de diagrammes de Nassi-Shneiderman conformes à la norme DIN 66261 : assemble des blocs en un clic ou utilise du pseudocode avec des mots-clés allemands ou anglais. Transforme le même déroulement en organigramme de programmation en un clic et exporte-le en PNG, SVG ou PDF. Gratuit, sans inscription et entièrement dans ton navigateur.

Créé par Justin Schuessler

Ton organigramme est terminé ? Teste directement le code correspondant sur ton propre VPS ou espace d’hébergement web.

Blocs de construction

100 %
Diagramme de Nassi-Shneiderman: FactorialFactorialSaisie: nresult := 1pour i de 1 à nresult := result * iSortie: result

Clavier dans le diagramme : ↑/↓ sélectionner un bloc, Entrée modifier le texte, Alt+↑/↓ déplacer, Suppr supprimer, Inser insérer un bloc, Ctrl+Z/Ctrl+Y annuler/rétablir, Ctrl+X/C/V couper/copier/coller.

Syntaxe du pseudo-code
PROGRAM Name
INPUT x / OUTPUT x
CALL procedure(x)
IF condition THEN … ELSE IF … ELSE … END IF
SWITCH x  CASE 1: …  DEFAULT: …  END SWITCH
WHILE condition … END WHILE
REPEAT … UNTIL condition
FOR i FROM 1 TO n STEP 1 … END FOR
LOOP name … BREAK name … END LOOP

Toute autre ligne est une instruction ; si elle commence par \, elle est toujours traitée comme une instruction, même si elle commence ensuite par un mot-clé.

L’indentation et la casse n’ont pas d’importance, et tu peux mélanger les mots-clés allemands et anglais. Aucun véritable code n’est généré ni exécuté.

Clique sur un bloc du diagramme pour le modifier ici. Double-clique pour modifier son texte directement dans le diagramme.

Enregistrer et exporter

Tout se passe dans ton navigateur : l’état actuel n’est enregistré qu’en local et le lien de partage contient le diagramme lui-même. Aucune donnée ne nous est envoyée.

Fonctionnalités

Dessine des diagrammes de Nassi-Shneiderman sans tracer de lignes

Tu décris le déroulement ; l’éditeur dispose les blocs selon la norme DIN 66261 et tient les deux vues à jour.

Blocs structurels conformes à la norme

Instruction, branchement, sélection de cas, boucles à condition initiale et finale, boucle à compteur, boucle infinie, sortie de boucle et appel de sous-programme selon la norme DIN 66261.

Passer à l’organigramme de programmation

Le même déroulement sous forme d’organigramme de programmation selon la norme DIN 66001, disposé automatiquement avec des flèches de retour pour les boucles.

Éditeur visuel par clic

Ajoute des blocs avant, après ou dans un autre bloc ; modifie les textes directement dans le diagramme, déplace, supprime ou annule tes modifications.

Pseudocode dans les deux sens

Le texte et le diagramme restent synchronisés. En cas de faute de frappe, l’éditeur indique la ligne et affiche une explication, sans effacer le diagramme.

Exportation et fichier de projet

PNG et SVG pour les documents, PDF au format A4 pour l’impression, fichier de projet (JSON) pour enregistrer et rouvrir ton travail.

Partager sans compte

Le lien de partage contient le diagramme dans la partie de l’adresse située après le #. Rien n’est enregistré sur nos serveurs.

Comment ça fonctionne

Comment créer un structogramme en ligne

Cinq étapes, du modèle à l’export final, sans compte ni téléchargement.

Étape 1

Charger un modèle ou repartir de zéro

Sous « Charger un exemple », choisis l’un des neuf exercices, comme le tri à bulles ou le calcul de notes. Avec « Nouveau », tu pars d’un déroulement vide.

Étape 2

Insérer des blocs

Choisis un bloc dans la bibliothèque, comme un branchement ou une boucle de comptage, sélectionne un bloc du diagramme et insère le nouveau bloc avant, après ou à l’intérieur. Double-clique pour modifier le texte directement dans le diagramme.

Étape 3

Ou écrire du pseudocode

Dans le champ « Pseudocode », écris une ligne par étape, avec des mots-clés allemands ou anglais. Le diagramme et le texte restent synchronisés ; en cas de faute de frappe, l’éditeur signale la ligne.

Étape 4

Vérifier et changer de vue

Déplace, copie ou supprime des blocs et annule des étapes. Si besoin, passe à la vue organigramme de programmation pour voir le même déroulement sous forme de diagramme de flux.

Étape 5

Exporter ou partager

Télécharge le structogramme en PNG, SVG ou PDF (A4), enregistre le fichier de projet (JSON) ou crée un lien de partage.

Bases

Qu’est-ce qu’un diagramme de Nassi-Shneiderman ?

Un structogramme, aussi appelé diagramme de Nassi-Shneiderman, diagramme N-S ou diagramme de Chapin, représente le déroulement d’un algorithme sous forme de blocs imbriqués. Isaac Nassi et Ben Shneiderman ont publié cette représentation en 1973 ; en Allemagne, ses symboles sont normalisés par la norme DIN 66261.

Comme il ne permet pas de sauts libres, un structogramme impose une programmation structurée : séquences, branchements et répétitions s’imbriquent visiblement. Les élèves, les personnes en formation et les étudiants l’utilisent donc pour concevoir des algorithmes avant de choisir un langage de programmation.

Cet éditeur te permet de créer des structogrammes en ligne sans tracer de lignes ni mesurer de cases : il calcule les blocs à partir de ton algorithme et peut aussi représenter le même déroulement sous forme d’organigramme de programme.

Pseudo-code

Du pseudocode au structogramme

Écris une ligne par étape : le structogramme se construit pendant que tu tapes. L’éditeur reconnaît les mots-clés allemands et anglais ; la casse et l’indentation n’ont aucune importance. Voici le modèle « Factorielle » affiché à la première ouverture :

Avec des mots-clés allemands

PROGRAMM Fakultät
EINGABE n
ergebnis := 1
FÜR i VON 1 BIS n
  ergebnis := ergebnis * i
ENDE FÜR
AUSGABE ergebnis

Avec des mots-clés anglais

PROGRAM Factorial
INPUT n
result := 1
FOR i FROM 1 TO n
  result := result * i
END FOR
OUTPUT result
Mots-clés des blocs de structure
Bloc de constructionAllemandAnglais
SaisieEINGABE xINPUT x
SortieAUSGABE xOUTPUT x
Sous-programmeAUFRUF p(x)CALL p(x)
BranchementWENN … DANN … SONST … ENDE WENNIF … THEN … ELSE … END IF
Sélection de casFALLS x FALL 1: … SONST: … ENDE FALLSSWITCH x CASE 1: … DEFAULT: … END SWITCH
Boucle à condition initialeSOLANGE … ENDE SOLANGEWHILE … END WHILE
Boucle à condition finaleWIEDERHOLE … BIS …REPEAT … UNTIL …
Boucle à compteurFÜR i VON 1 BIS n … ENDE FÜRFOR i FROM 1 TO n … END FOR
Boucle infinieENDLOSSCHLEIFE … ENDE ENDLOSSCHLEIFELOOP … END LOOP
Sortie de boucleABBRUCHBREAK

L’éditeur ne reconnaît pas les mots-clés dans d’autres langues : les lignes concernées deviennent de simples instructions. Tu peux toutefois écrire les textes des blocs — conditions, instructions et noms — dans la langue de ton choix. En cas de faute de frappe, l’éditeur signale la ligne et conserve le dernier diagramme valide.

Modèles d’exercices

Exemples de structogrammes pour t’entraîner

Neuf exercices classiques issus des cours d’informatique, de la formation et des études supérieures sont déjà disponibles. Charge-les avec « Charger un exemple », puis modifie-les librement. Les modèles utilisent les mots-clés sélectionnés dans le champ de pseudocode : allemands ou anglais.

  • Factorielle
  • Calcul de la note
  • Connexion en 3 tentatives
  • Année bissextile
  • Maximum d’une liste
  • Tri à bulles
  • Distributeur de boissons
  • Test de primalité
  • Deviner un nombre

DIN 66261

Principaux symboles d’un diagramme de Nassi-Shneiderman

Les blocs de structure de Nassi-Shneiderman que l’éditeur peut dessiner. Chaque bloc possède exactement une entrée en haut et une sortie en bas. L’éditeur ne prend pas en charge le traitement parallèle de la norme DIN 66261.

Instruction (bloc de structure)somme := somme + nombre

Instruction (bloc de structure)

Un rectangle représente une étape de traitement unique, par exemple une affectation ou un calcul.

Suite (séquence)Saisie: nombrecarré := nombre * nombreSortie: carré

Suite (séquence)

Les blocs superposés sont exécutés successivement, de haut en bas. Les entrées et sorties sont des blocs d’instructions ordinaires.

Branchement (sélection)nombre > 0ouinonSortie: « positif »∅

Branchement (sélection)

Un triangle contenant la condition divise l’exécution en une branche Oui et une branche Non. Une branche vide est marquée par ∅.

Sélection de cas (choix multiple)x1a := 102a := 20sinona := 0

Sélection de cas (choix multiple)

Selon la valeur d’une expression, un seul des cas est exécuté. Les valeurs des cas figurent juste sous la diagonale ; le dernier cas, souvent « sinon » pour toutes les autres valeurs, se trouve dans le triangle de droite.

Boucle à condition initialetant que i <= 10i := i + 1

Boucle à condition initiale

La condition se trouve en haut et est vérifiée avant chaque itération. Si elle est fausse dès le départ, le corps n’est jamais exécuté.

Boucle à condition finaleSaisie: nombrejusqu’à nombre > 0

Boucle à condition finale

La condition se trouve en bas : le corps est exécuté au moins une fois, puis répété jusqu’à ce que la condition soit remplie.

Boucle à compteurpour i de 1 à 10Sortie: i

Boucle à compteur

Une boucle à condition initiale avec une variable de comptage, une valeur initiale, une valeur finale et un pas facultatif.

Appel de sous-programmetrier(liste)

Appel de sous-programme

Un bloc à doubles lignes latérales appelle un sous-programme distinct, décrit ailleurs.

Boucle infinieMenuSaisie: choixexécuter(choix)

Boucle infinie

Une répétition sans condition : bandeau supérieur (avec identifiant facultatif), barre à gauche et bandeau inférieur. Seule une sortie de boucle permet d’en sortir.

Sortie de boucleMenu

Sortie de boucle

Le coin à gauche permet de sortir de la boucle englobante la plus interne ; son identifiant désigne le bloc quitté. L’exécution reprend au bloc suivant cette boucle.

DIN 66001

Principaux symboles d’un organigramme

Les symboles de la norme DIN 66001 utilisés par l’éditeur pour les organigrammes. Les éléments sont disposés automatiquement : tu n’as rien à déplacer.

Terminaison (début/fin)Démarrer

Terminaison (début/fin)

L’ovale marque le début et la fin de l’organigramme.

Opérationsomme := somme + nombre

Opération

Un rectangle représente une étape de traitement, par exemple une affectation ou un calcul.

Entrée/sortieSaisie: nombre

Entrée/sortie

Le parallélogramme indique où les données sont lues ou affichées.

Branchementnombre > 0

Branchement

Le losange contient une condition. Selon le résultat, l’exécution se poursuit par la sortie Oui ou Non.

Sous-programmetrier(liste)

Sous-programme

Un rectangle à doubles lignes latérales appelle un sous-programme disposant de son propre organigramme.

Ligne de fluxSaisie: nombreSortie: nombre

Ligne de flux

Des lignes fléchées relient les symboles et indiquent l’ordre des étapes. Le parcours normal va de haut en bas.

Branchement avec jonctionnombre > 0ouinons := 1s := -1

Branchement avec jonction

Après une bifurcation, les deux chemins se rejoignent avant que le processus continue.

Limite de boucle (boucle infinie)MenuSaisie: choixMenu

Limite de boucle (boucle infinie)

Un hexagone aux coins supérieurs biseautés marque le début de la boucle ; un autre, aux coins inférieurs biseautés, en marque la fin. L’éditeur utilise cette paire pour la boucle infinie.

Point de sortieBoucle infinieterminéouinonAcontinuer()Boucle infinieA

Point de sortie

Un cercle contenant une lettre relie deux points sans longue ligne. Une sortie de boucle aboutit au cercle A ; l’exécution reprend au cercle A après la boucle.

Boucle avec retouri <= 10ouii := i + 1non

Boucle avec retour

Une boucle se forme avec un branchement et une ligne de retour qui ramène avant la condition.

Découvrir plus

Autres outils

FAQ

Questions fréquentes

Des réponses courtes sur les structogrammes, les diagrammes de Nassi-Shneiderman, la norme DIN 66261 et cet éditeur.

Un structogramme représente graphiquement le déroulement d’un programme ou d’un algorithme, sans dépendre d’un langage de programmation. Chaque étape de traitement est un rectangle ; les branchements et les boucles sont des blocs imbriqués. L’absence de sauts impose un déroulement bien structuré. Isaac Nassi et Ben Shneiderman ont publié cette représentation en 1973 : on l’appelle aussi diagramme de Nassi-Shneiderman, diagramme N-S ou diagramme de Chapin.

Directement ici, dans l’éditeur : il est gratuit, ne nécessite aucun compte et fonctionne entièrement dans ton navigateur. Ton travail en cours reste uniquement dans le stockage local de ton navigateur, et les exports sont générés directement sur ton appareil. Le lien de partage contient le diagramme dans la partie de l’adresse située après le #, qui n’est pas transmise au serveur.

Instruction, séquence, entrée, sortie, branchement, sélection de cas, boucle avec test en début ou en fin, boucle de comptage, boucle infinie, sortie de boucle (interruption) et appel de sous-programme. Les symboles suivent la norme DIN 66261 (symboles des structogrammes de Nassi-Shneiderman, 1985). Seul le traitement parallèle prévu par la norme n’est pas proposé par l’éditeur.

Les deux décrivent le même déroulement. Le structogramme imbrique les blocs et ne permet pas de sauts libres. L’organigramme de programmation (DIN 66001), souvent appelé diagramme de flux, relie des symboles par des flèches ; les boucles sont représentées par des flèches de retour. Dans cet éditeur, tu passes d’une vue à l’autre en un clic, car toutes deux sont dessinées à partir du même déroulement. Accéder à l’éditeur d’organigrammes de programmation

La boucle avec test en début (while, « tant que… ») place la condition en haut et la vérifie avant chaque itération : son corps peut donc ne jamais être exécuté. La boucle avec test en fin (« répéter… jusqu’à… ») vérifie la condition en bas : son corps s’exécute au moins une fois. La boucle de comptage (for) est une boucle avec test en début, dotée d’une variable de comptage, d’une valeur initiale et d’une valeur finale, et éventuellement d’un pas. Une boucle infinie n’a pas de condition et ne peut être quittée que par une sortie de boucle (interruption).

Une ligne par étape. Tu ouvres et fermes les blocs avec des mots-clés précis, en allemand (SI, SELON, TANT QUE, RÉPÉTER … JUSQU’À, POUR … DE … À) ou en anglais (IF, SWITCH, WHILE, REPEAT … UNTIL, FOR … FROM … TO) ; tu choisis la langue dans le champ de pseudocode. L’éditeur ne reconnaît pas les mots-clés dans d’autres langues, mais tu peux écrire les textes des blocs dans la langue de ton choix. Il ne convertit pas le code Java ou Python et ne génère pas non plus de code. En cas de faute de frappe, il signale la ligne et conserve le dernier diagramme valide.

Exporte en PNG haute résolution, en SVG pour poursuivre les modifications ou en PDF sur une page A4 pour l’impression. Tu peux insérer le PNG comme image dans Word ou LibreOffice Writer. Le fichier de projet (JSON) te permet d’enregistrer le déroulement et de le rouvrir plus tard ; il contient un numéro de version pour que les anciens fichiers fonctionnent aussi avec les versions récentes de l’éditeur.

Oui, neuf modèles d’exercices classiques : factorielle, calcul de notes, connexion avec 3 tentatives, année bissextile, maximum d’une liste, tri à bulles, distributeur de boissons, test de primalité et jeu du nombre à deviner. Charge-les avec « Charger un exemple » et modifie-les librement. Si tu dois dessiner un structogramme à la main lors d’un examen, l’éditeur t’aide à t’entraîner et à vérifier ton travail.

D’autres questions ?

Contacter le support
Du diagramme au programme

Teste le code de ton diagramme sur ton propre serveur

Sur un VPS ZAP-Hosting, tu disposes d’un accès root complet pour utiliser le langage de ton choix. Sur un espace d’hébergement web, PHP et MySQL sont immédiatement disponibles.

4,4/5 Trustpilot32 000+ Serveurs actifsDepuis 2010

Sans configuration. Sans risque. En ligne en quelques secondes.

Durée flexibleRésiliable à tout momentEn ligne en 60 secondes

Tu cherches d’autres outils ? Voir tous les outils de développement