Vai al contenuto
Strumento gratuito

Crea un diagramma strutturato online: editor per diagrammi di Nassi-Shneiderman

Crea online diagrammi strutturati di Nassi-Shneiderman secondo la norma DIN 66261: con un clic usando i blocchi oppure tramite pseudocodice con parole chiave tedesche o inglesi. Passa con un clic al diagramma di flusso dello stesso processo ed esporta in PNG, SVG o PDF. Gratis, senza registrazione e interamente nel tuo browser.

Creato da Justin Schuessler

Il processo è pronto? Prova subito il relativo codice su un tuo VPS o spazio web.

Blocchi

100 %
Diagramma di Nassi-Shneiderman: FactorialFactorialInput: nresult := 1per i da 1 a nresult := result * iRisultato: result

Tastiera nel diagramma: ↑/↓ seleziona un blocco, Invio modifica il testo, Alt+↑/↓ sposta, Canc elimina, Ins inserisce un blocco, Ctrl+Z/Ctrl+Y annulla/ripristina, Ctrl+X/C/V taglia/copia/incolla.

Sintassi dello pseudocodice
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

Ogni altra riga è un'istruzione; se inizia con \, una riga è sempre un'istruzione, anche quando comincia con una parola chiave.

L'indentazione e le maiuscole non contano; puoi anche mescolare parole chiave tedesche e inglesi. Non viene generato né eseguito codice reale.

Clicca su un blocco nel diagramma per modificarlo qui. Fai doppio clic per modificare il testo direttamente nel diagramma.

Salva ed esporta

Tutto funziona nel tuo browser: lo stato attuale viene salvato solo in locale e il link di condivisione contiene il diagramma stesso. Non ci viene inviato alcun dato.

Funzioni

Crea diagrammi di Nassi-Shneiderman senza tracciare linee

Descrivi il processo: l’editor dispone i blocchi secondo la norma DIN 66261 e mantiene aggiornate entrambe le viste.

Blocchi strutturali conformi alla norma

Istruzioni, condizioni, selezioni multiple, cicli con controllo iniziale e finale, cicli con contatore, cicli infiniti, uscite anticipate e chiamate a sottoprogrammi secondo la norma DIN 66261.

Passa al diagramma di flusso

Lo stesso processo come diagramma di flusso secondo la norma DIN 66001, disposto automaticamente e con linee di ritorno per i cicli.

Editor visuale a blocchi

Inserisci blocchi prima, dopo o all'interno di un altro blocco; modifica i testi direttamente nel diagramma, sposta, elimina e annulla.

Pseudocodice in entrambe le direzioni

Testo e diagramma restano sincronizzati. In caso di errore di battitura, l’editor indica la riga e mostra un suggerimento; il diagramma resta visibile.

Esportazione e file di progetto

PNG e SVG per i documenti, PDF in formato A4 per la stampa e file di progetto (JSON) da salvare e riaprire.

Condividi senza account

Il link di condivisione contiene il diagramma nella parte dell’indirizzo dopo il simbolo #. Non viene salvato nulla sui nostri server.

Come funziona

Come creare un diagramma strutturato online

Cinque passaggi, dal modello all’esportazione, senza account né download.

Passaggio 1

Carica un modello o inizia da zero

Sotto «Carica modello di esempio», scegli uno dei nove esercizi, come Bubble sort o il calcolo dei voti. Con «Nuovo» inizi da un flusso vuoto.

Passaggio 2

Inserisci blocchi

Scegli un elemento, come una diramazione o un ciclo con contatore, seleziona un blocco e inserisci il nuovo elemento prima, dopo o al suo interno. Fai doppio clic per modificare il testo direttamente nel diagramma.

Passaggio 3

Oppure scrivi lo pseudocodice

Nel campo «Pseudocodice», scrivi una riga per ogni passaggio usando parole chiave tedesche o inglesi. Diagramma e testo restano sincronizzati; se c’è un errore di battitura, l’editor segnala la riga.

Passaggio 4

Verifica e cambia vista

Sposta, copia o elimina i blocchi e annulla i passaggi. Se vuoi, passa alla vista del diagramma di flusso per vedere lo stesso processo sotto forma di diagramma di flusso.

Passaggio 5

Esporta o condividi

Scarica il diagramma strutturato in PNG, SVG o PDF (A4), salva il file di progetto (JSON) oppure crea un link di condivisione.

Nozioni di base

Che cos’è un diagramma di Nassi-Shneiderman?

Uno struttogramma, detto anche diagramma di Nassi-Shneiderman, diagramma N-S o diagramma di Chapin, rappresenta il flusso di un algoritmo mediante blocchi annidati. Isaac Nassi e Ben Shneiderman hanno pubblicato questa rappresentazione nel 1973; in Germania i simboli sono standardizzati dalla norma DIN 66261.

Non consentendo salti arbitrari, un diagramma strutturato impone una programmazione strutturata: sequenze, diramazioni e ripetizioni sono visibilmente annidate. Per questo studenti e apprendisti lo usano per progettare algoritmi prima di scegliere un linguaggio di programmazione.

Con questo editor crei struttogrammi online senza tracciare linee né misurare riquadri: calcola i blocchi a partire dal tuo flusso e, se vuoi, rappresenta lo stesso flusso come diagramma di flusso.

Pseudocodice

Dallo pseudocodice al diagramma strutturato

Scrivi una riga per ogni passaggio: il diagramma strutturato si aggiorna mentre digiti. L’editor riconosce le parole chiave tedesche e inglesi; maiuscole, minuscole e rientri non contano. Ecco il modello «Fattoriale» mostrato alla prima apertura:

Con parole chiave tedesche

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

Con parole chiave in inglese

PROGRAM Factorial
INPUT n
result := 1
FOR i FROM 1 TO n
  result := result * i
END FOR
OUTPUT result
Parole chiave per i blocchi strutturali
Blocco da costruzioneTedescoInglese
InputEINGABE xINPUT x
RisultatoAUSGABE xOUTPUT x
SottoprogrammaAUFRUF p(x)CALL p(x)
DiramazioneWENN … DANN … SONST … ENDE WENNIF … THEN … ELSE … END IF
Selezione dei casiFALLS x FALL 1: … SONST: … ENDE FALLSSWITCH x CASE 1: … DEFAULT: … END SWITCH
Ciclo con condizione in testaSOLANGE … ENDE SOLANGEWHILE … END WHILE
Ciclo con condizione in fondoWIEDERHOLE … BIS …REPEAT … UNTIL …
Ciclo con contatoreFÜR i VON 1 BIS n … ENDE FÜRFOR i FROM 1 TO n … END FOR
Ciclo infinitoENDLOSSCHLEIFE … ENDE ENDLOSSCHLEIFELOOP … END LOOP
Uscita dal ciclo (interruzione)ABBRUCHBREAK

L’editor non riconosce le parole chiave in altre lingue: quelle righe diventano semplici istruzioni. Puoi scrivere in qualsiasi lingua il testo dei blocchi, come condizioni, istruzioni e nomi. Se c’è un errore di battitura, l’editor segnala la riga e conserva l’ultimo diagramma valido.

Modelli di esercitazione

Esempi di diagrammi strutturati per esercitarti

Sono già disponibili nove esercizi tipici delle lezioni di informatica, della formazione professionale e dell’università. Caricali con «Carica modello di esempio» e poi modificali liberamente. I modelli usano le parole chiave selezionate nel campo dello pseudocodice: tedesco o inglese.

  • Fattoriale
  • Calcolo del voto
  • Accesso con 3 tentativi
  • Anno bisestile
  • Massimo di una lista
  • Bubble sort
  • Distributore di bevande
  • Test di primalità
  • Indovina il numero

DIN 66261

I principali simboli del diagramma di Nassi-Shneiderman

I blocchi strutturali di Nassi-Shneiderman che l'editor può disegnare. Ogni blocco ha un solo ingresso in alto e una sola uscita in basso. L'editor non supporta l'elaborazione parallela prevista dalla norma DIN 66261.

Istruzione (blocco strutturale)somma := somma + numero

Istruzione (blocco strutturale)

Un rettangolo rappresenta una singola operazione, ad es. un'assegnazione o un calcolo.

SequenzaInput: numeroquadrato := numero * numeroRisultato: quadrato

Sequenza

I blocchi disposti uno sotto l'altro vengono eseguiti in sequenza dall'alto verso il basso. Input e output sono normali blocchi di istruzioni.

Diramazione (selezione)numero > 0sìnoRisultato: „positivo“∅

Diramazione (selezione)

Un triangolo con la condizione divide il flusso in un ramo Sì e un ramo No. Un ramo vuoto è contrassegnato con ∅.

Selezione dei casi (scelta multipla)x1a := 102a := 20altrimentia := 0

Selezione dei casi (scelta multipla)

A seconda del valore di un'espressione, viene eseguito uno solo dei casi. I valori dei casi sono subito sotto la diagonale; l'ultimo caso (spesso «altrimenti», per tutti gli altri valori) è nel triangolo a destra.

Ciclo con condizione in testafinché i <= 10i := i + 1

Ciclo con condizione in testa

La condizione è in alto e viene verificata prima di ogni iterazione. Se è falsa fin dall'inizio, il corpo non viene eseguito neanche una volta.

Ciclo con condizione in fondoInput: numerofino a numero > 0

Ciclo con condizione in fondo

La condizione è in basso: il corpo viene eseguito almeno una volta e ripetuto finché la condizione non è soddisfatta.

Ciclo con contatoreper i da 1 a 10Risultato: i

Ciclo con contatore

Un ciclo con condizione in testa, una variabile contatore, un valore iniziale e uno finale e un incremento facoltativo.

Chiamata a sottoprogrammaordina(lista)

Chiamata a sottoprogramma

Un blocco con doppie linee laterali richiama un sottoprogramma separato, descritto altrove.

Ciclo infinitoMenuInput: sceltaesegui(scelta)

Ciclo infinito

Una ripetizione senza condizione: fascia superiore (con identificatore facoltativo), barra a sinistra e fascia inferiore. Se ne esce solo tramite un'uscita dal ciclo.

Uscita dal ciclo (interruzione)Menu

Uscita dal ciclo (interruzione)

Il cuneo a sinistra fa uscire dal ciclo più interno; l'identificatore indica il blocco da cui si esce. L'esecuzione prosegue poi con il blocco successivo al ciclo.

DIN 66001

I principali simboli del diagramma di flusso

I simboli della norma DIN 66001 usati dall'editor per i diagrammi di flusso. Il flusso viene disposto automaticamente: non devi spostare nulla.

Terminatore (inizio/fine)Avvio

Terminatore (inizio/fine)

L'ovale indica l'inizio e la fine del diagramma di flusso.

Operazionesomma := somma + numero

Operazione

Un rettangolo rappresenta un'operazione, ad es. un'assegnazione o un calcolo.

Input/outputInput: numero

Input/output

Il parallelogramma indica dove vengono letti o restituiti i dati.

Diramazionenumero > 0

Diramazione

Il rombo contiene una condizione. In base al risultato, l'esecuzione prosegue dall'uscita Sì o No.

Sottoprogrammaordina(lista)

Sottoprogramma

Un rettangolo con doppie linee laterali richiama un sottoprogramma con un proprio diagramma di flusso.

Linea di flussoInput: numeroRisultato: numero

Linea di flusso

Le linee con freccia collegano i simboli e indicano la sequenza. Di norma, il flusso procede dall'alto verso il basso.

Diramazione con ricongiungimentonumero > 0sìnos := 1s := -1

Diramazione con ricongiungimento

Dopo una diramazione, i due percorsi si ricongiungono prima che il flusso prosegua.

Limite del ciclo (ciclo infinito)MenuInput: sceltaMenu

Limite del ciclo (ciclo infinito)

Un esagono con gli angoli superiori smussati indica l'inizio del ciclo; uno con gli angoli inferiori smussati ne indica la fine. L'editor usa questa coppia per il ciclo infinito.

Punto di uscitaCiclo infinitocompletatosìnoAcontinua()Ciclo infinitoA

Punto di uscita

Un cerchio con una lettera collega due punti senza una lunga linea. Un'uscita termina nel cerchio A e il flusso riprende dal cerchio A dopo il ciclo.

Ciclo con ritornoi <= 10sìi := i + 1no

Ciclo con ritorno

Un ciclo si crea con una diramazione e una linea di ritorno che precede la condizione.

Scopri di più

Altri strumenti

FAQ

Domande frequenti

Risposte brevi su diagrammi strutturati, diagrammi di Nassi-Shneiderman, DIN 66261 e questo editor.

Un diagramma strutturato rappresenta graficamente il flusso di un programma o di un algoritmo, senza dipendere da un linguaggio di programmazione. Ogni passaggio è un rettangolo; diramazioni e cicli sono blocchi annidati. Poiché non prevede salti, impone un flusso ben strutturato. Isaac Nassi e Ben Shneiderman pubblicarono questa rappresentazione nel 1973: per questo è detta anche diagramma di Nassi-Shneiderman, diagramma N-S o diagramma di Chapin.

Direttamente qui nell’editor: è gratuito, non richiede un account e funziona interamente nel tuo browser. Lo stato attuale viene conservato solo nella memoria locale del browser e i file esportati vengono creati direttamente sul tuo dispositivo. Nel link di condivisione, il diagramma si trova nella parte dell’indirizzo dopo il simbolo #, che non viene inviata al server.

Istruzione, sequenza, input, output, diramazione, selezione multipla, ciclo con controllo iniziale o finale, ciclo con contatore, ciclo infinito, uscita anticipata (interruzione) e chiamata a sottoprogramma. I simboli seguono la norma DIN 66261 (simboli per diagrammi strutturati secondo Nassi-Shneiderman, 1985). L’editor non supporta soltanto l’elaborazione parallela prevista dalla norma.

Entrambi descrivono lo stesso flusso. Il diagramma strutturato annida i blocchi e non prevede salti arbitrari. Il diagramma di flusso del programma (PAP, DIN 66001) collega invece i simboli con frecce; i cicli sono rappresentati da linee di ritorno. In questo editor puoi passare da una vista all’altra con un clic, perché entrambe derivano dallo stesso flusso. Vai all’editor di diagrammi di flusso

Il ciclo con controllo iniziale (while, «finché…») ha la condizione in alto e la verifica prima di ogni iterazione: il corpo potrebbe quindi non essere mai eseguito. Il ciclo con controllo finale («ripeti… finché…») la verifica in basso: il corpo viene eseguito almeno una volta. Il ciclo con contatore (for) è un ciclo con controllo iniziale dotato di variabile contatore, valore iniziale e finale e incremento opzionale. Un ciclo infinito non ha condizioni e termina solo con un’uscita anticipata (interruzione).

Una riga per ogni passaggio. Apri e chiudi i blocchi con parole chiave prestabilite, in tedesco (WENN, FALLS, MENTRE, WIEDERHOLE … BIS, FÜR … VON … BIS) o in inglese (IF, SWITCH, WHILE, REPEAT … UNTIL, FOR … FROM … TO); scegli la lingua nel campo dello pseudocodice. L’editor non riconosce parole chiave in altre lingue, ma puoi scrivere in qualsiasi lingua il testo dei blocchi. Non converte codice Java o Python e non genera codice. Se c’è un errore di battitura, segnala la riga e conserva l’ultimo diagramma valido.

Esporta in PNG ad alta risoluzione, in SVG per ulteriori modifiche o in PDF su una pagina A4 da stampare. Puoi inserire il PNG come immagine in Word o LibreOffice Writer. Salva il flusso in un file di progetto (JSON) e riaprilo in seguito: contiene un numero di versione affinché anche i file più vecchi funzionino nelle versioni più recenti dell’editor.

Sì, ci sono nove modelli con esercizi tipici: fattoriale, calcolo dei voti, login con 3 tentativi, anno bisestile, massimo di una lista, Bubble sort, distributore di bevande, test di primalità e indovina il numero. Caricali con «Carica modello di esempio» e modificali liberamente. Se all’esame devi disegnare a mano, l’editor ti aiuta a esercitarti e a verificare il risultato.

Hai altre domande?

Contatta il supporto
Dal diagramma al programma

Prova il codice del tuo diagramma di Nassi-Shneiderman su un server tutto tuo

Su un VPS ZAP-Hosting hai accesso root completo per qualsiasi linguaggio; su uno spazio web, PHP e MySQL sono subito disponibili.

4,4/5 Trustpilot32.000+ Server attiviDal 2010

Nessuna configurazione. Nessun rischio. Online in pochi secondi.

Durata flessibileDisdicibile in qualsiasi momentoOnline in 60 secondi

Cerchi altri strumenti? Visualizza tutti gli strumenti per sviluppatori