Ir para o conteúdo
Ferramenta gratuita

Crie um estruturograma online: editor de diagramas de Nassi-Shneiderman

Crie estruturogramas online como diagramas de Nassi-Shneiderman conforme a DIN 66261: com blocos inseridos por clique ou pseudocódigo com palavras-chave em alemão ou inglês. Com um clique, você vê o mesmo fluxo como fluxograma de programa. Exporte como PNG, SVG ou PDF. Grátis, sem cadastro e inteiramente no seu navegador.

Criado por Justin Schuessler

Fluxo pronto? Teste o código diretamente em um VPS ou espaço de hospedagem web próprio.

Blocos de construção

100 %
Diagrama de Nassi-Shneiderman: FactorialFactorialEntrada: nresult := 1para i de 1 até nresult := result * iSaída: result

Teclado no diagrama: ↑/↓ selecionar bloco, Enter editar texto, Alt+↑/↓ mover, Delete excluir, Insert inserir bloco, Ctrl+Z/Ctrl+Y desfazer/refazer, Ctrl+X/C/V recortar/copiar/colar.

Sintaxe do pseudocódigo
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

Qualquer outra linha é uma instrução; com \ no início, a linha sempre é uma instrução, mesmo que comece com uma palavra-chave.

A indentação e o uso de maiúsculas e minúsculas não importam, e você pode misturar palavras-chave em alemão e inglês. Nenhum código de programa real é gerado ou executado.

Clique em um bloco no diagrama para editá-lo aqui. Clique duas vezes para editar o texto diretamente no diagrama.

Salvar e exportar

Tudo funciona no seu navegador: o estado atual é salvo apenas localmente, e o link de compartilhamento contém o próprio diagrama. Nenhum dado é enviado para nós.

Funções

Crie diagramas de Nassi-Shneiderman sem desenhar linhas

Você descreve o fluxo, e o editor organiza os blocos conforme a DIN 66261 e mantém as duas visualizações atualizadas.

Blocos estruturais conforme a norma

Instrução, condição, seleção de casos, laço com teste no início ou no fim, laço de contagem, laço infinito, saída e chamada de sub-rotina conforme a DIN 66261.

Alternar para o PAP

O mesmo fluxo como fluxograma de programa conforme a DIN 66001, organizado automaticamente e com linhas de retorno nos laços.

Editor visual de cliques

Coloque blocos antes, depois ou dentro de outro bloco; edite textos diretamente no diagrama, mova, exclua ou desfaça alterações.

Pseudocódigo nos dois sentidos

Texto e diagrama permanecem sincronizados. Se houver um erro de digitação, o editor mostra a linha e uma indicação, sem alterar o diagrama.

Exportação e arquivo de projeto

PNG e SVG para documentos, PDF em A4 para impressão e arquivo de projeto (JSON) para salvar e abrir novamente.

Compartilhe sem conta

O link de compartilhamento inclui o diagrama na parte do endereço após #. Nada é salvo em nossos servidores.

Como funciona

Como criar um estruturrograma online

Cinco etapas, do modelo à exportação final, sem conta e sem download.

Passo 1

Carregue um modelo ou comece do zero

Em «Carregar modelo de exemplo», escolha um dos nove exercícios, como Bubble Sort ou cálculo de notas. Use «Novo» para começar com um fluxo vazio.

Passo 2

Inserir blocos

Escolha no kit de blocos um elemento como decisão ou laço de contagem, selecione um bloco no diagrama e insira o novo elemento antes, depois ou dentro dele. Dê dois cliques para editar o texto diretamente no diagrama.

Passo 3

Ou escrever pseudocódigo

No campo «Pseudocódigo», você escreve uma linha por etapa, com palavras-chave em alemão ou inglês. O diagrama e o texto ficam sincronizados; se houver um erro de digitação, o editor destaca a linha com uma indicação.

Passo 4

Conferir e alternar

Mova, copie ou exclua blocos e desfaça etapas. Se precisar, mude para a visualização de fluxograma de programa e veja o mesmo fluxo como fluxograma.

Passo 5

Exportar ou compartilhar

Baixe o estruturograma como PNG, SVG ou PDF (A4), salve o arquivo de projeto (JSON) ou crie um link de compartilhamento.

Noções básicas

O que é um diagrama de Nassi-Shneiderman?

Um diagrama estruturado, também chamado de diagrama de Nassi-Shneiderman, diagrama N-S ou diagrama de Chapin, mostra o fluxo de um algoritmo em blocos aninhados. Isaac Nassi e Ben Shneiderman publicaram essa representação em 1973; na Alemanha, os símbolos são padronizados pela norma DIN 66261.

Como não há saltos livres, um estruturograma exige programação estruturada: sequência, seleção e repetição aparecem visivelmente aninhadas. Por isso, estudantes de escolas, cursos técnicos e faculdades usam estruturogramas para planejar algoritmos antes de escolher uma linguagem de programação.

Com este editor, você cria diagramas estruturados online sem desenhar linhas nem medir caixas: ele calcula os blocos a partir do seu fluxo e, se você quiser, também representa o mesmo fluxo como um fluxograma.

Pseudocódigo

Do pseudocódigo ao estruturrograma

Escreva uma linha por etapa; o estruturograma acompanha sua digitação. O editor reconhece palavras-chave em alemão e inglês; maiúsculas, minúsculas e recuos não fazem diferença. Veja o modelo «Fatorial», exibido quando você abre o editor pela primeira vez:

Com palavras-chave em alemão

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

Com palavras-chave em inglês

PROGRAM Factorial
INPUT n
result := 1
FOR i FROM 1 TO n
  result := result * i
END FOR
OUTPUT result
Palavras-chave dos blocos estruturais
Bloco de construçãoAlemãoInglês
EntradaEINGABE xINPUT x
SaídaAUSGABE xOUTPUT x
Sub-rotinaAUFRUF p(x)CALL p(x)
RamificaçãoWENN … DANN … SONST … ENDE WENNIF … THEN … ELSE … END IF
Seleção de casosFALLS x FALL 1: … SONST: … ENDE FALLSSWITCH x CASE 1: … DEFAULT: … END SWITCH
Loop com condição no inícioSOLANGE … ENDE SOLANGEWHILE … END WHILE
Loop com condição no finalWIEDERHOLE … BIS …REPEAT … UNTIL …
Loop de contagemFÜR i VON 1 BIS n … ENDE FÜRFOR i FROM 1 TO n … END FOR
Loop infinitoENDLOSSCHLEIFE … ENDE ENDLOSSCHLEIFELOOP … END LOOP
Saída do loop (interrupção)ABBRUCHBREAK

O editor não reconhece palavras-chave em outros idiomas; essas linhas viram instruções simples. Você pode escrever em qualquer idioma o texto dos blocos, como condições, instruções e nomes. Se houver um erro de digitação, o editor destaca a linha com uma indicação e mantém o último diagrama válido.

Modelos de exercícios

Exemplos de estruturrogramas para praticar

Nove exercícios comuns de aulas de informática, cursos técnicos e faculdade já estão disponíveis. Você pode carregá-los em «Carregar modelo de exemplo» e alterá-los livremente. Os modelos usam as palavras-chave selecionadas no campo de pseudocódigo: alemão ou inglês.

  • Fatorial
  • Cálculo de notas
  • Login com 3 tentativas
  • Ano bissexto
  • Máximo de uma lista
  • Bubble sort
  • Máquina de bebidas
  • Teste de primalidade
  • Adivinhe o número

DIN 66261

Principais símbolos do diagrama de Nassi-Shneiderman

Os blocos estruturais de Nassi-Shneiderman que o editor pode desenhar. Cada bloco tem exatamente uma entrada na parte superior e uma saída na parte inferior. O editor não oferece o processamento paralelo da DIN 66261.

Instrução (bloco estrutural)soma := soma + numero

Instrução (bloco estrutural)

Um retângulo representa uma única etapa de processamento, como uma atribuição ou um cálculo.

SequênciaEntrada: numeroquadrado := numero * numeroSaída: quadrado

Sequência

Os blocos empilhados são executados em sequência, de cima para baixo. Entradas e saídas são blocos de instrução comuns.

Ramificação (seleção)numero > 0simnãoSaída: “positivo”∅

Ramificação (seleção)

Um triângulo com a condição divide o fluxo em uma ramificação Sim e outra Não. Uma ramificação vazia é marcada com ∅.

Seleção de casos (seleção múltipla)x1a := 102a := 20senãoa := 0

Seleção de casos (seleção múltipla)

Dependendo do valor de uma expressão, apenas um dos casos é executado. Os valores dos casos ficam logo abaixo da diagonal; o último caso (geralmente “senão”, para todos os demais valores) fica no triângulo à direita.

Loop com condição no inícioenquanto i <= 10i := i + 1

Loop com condição no início

A condição fica na parte superior e é verificada antes de cada execução. Se for falsa logo no início, o corpo não é executado nenhuma vez.

Loop com condição no finalEntrada: numeroaté numero > 0

Loop com condição no final

A condição fica na parte inferior: o corpo é executado pelo menos uma vez e se repete até que a condição seja satisfeita.

Loop de contagempara i de 1 até 10Saída: i

Loop de contagem

Um loop com condição no início, variável de contagem, valores inicial e final e incremento opcional.

Chamada de subprogramaordenar(lista)

Chamada de subprograma

Um bloco com linhas laterais duplas chama uma sub-rotina própria, descrita em outro lugar.

Loop infinitoMenuEntrada: escolhaexecutar(escolha)

Loop infinito

Uma repetição sem condição: faixa superior (opcionalmente com identificador), barra à esquerda e faixa inferior. Só é possível sair dela por uma saída do loop.

Saída do loop (interrupção)Menu

Saída do loop (interrupção)

A cunha à esquerda sai do loop mais interno; o identificador indica o bloco do qual se sai. O fluxo continua no bloco após esse loop.

DIN 66001

Principais símbolos do fluxograma

Os símbolos da DIN 66001 que o editor usa nos fluxogramas. O fluxo é organizado automaticamente; você não precisa mover nada.

Terminal (início/fim)Iniciar

Terminal (início/fim)

O oval marca o início e o fim do fluxograma.

Operaçãosoma := soma + numero

Operação

Um retângulo representa uma etapa de processamento, como uma atribuição ou um cálculo.

Entrada/saídaEntrada: numero

Entrada/saída

O paralelogramo indica onde os dados são lidos ou exibidos.

Ramificaçãonumero > 0

Ramificação

O losango contém uma condição. Conforme o resultado, o fluxo segue pela saída Sim ou Não.

Sub-rotinaordenar(lista)

Sub-rotina

Um retângulo com linhas laterais duplas chama uma sub-rotina que tem seu próprio fluxograma.

Linha de fluxoEntrada: numeroSaída: numero

Linha de fluxo

Linhas com setas conectam os símbolos e indicam a sequência. O fluxo normal segue de cima para baixo.

Ramificação com junçãonumero > 0simnãos := 1s := -1

Ramificação com junção

Após uma ramificação, os dois caminhos se encontram novamente em um ponto antes de o fluxo continuar.

Limite do laço (laço infinito)MenuEntrada: escolhaMenu

Limite do laço (laço infinito)

Um hexágono com os cantos superiores chanfrados marca o início do loop; outro, com os cantos inferiores chanfrados, marca o fim. O editor usa esse par para o loop infinito.

Ponto de saídaLoop infinitoconcluídosimnãoAcontinuar()Loop infinitoA

Ponto de saída

Um círculo com uma letra conecta dois pontos sem uma linha longa. Uma saída do loop termina no círculo A, e o fluxo continua no círculo A após o loop.

Laço com retornoi <= 10simi := i + 1não

Laço com retorno

Um loop é formado por uma ramificação e uma linha de retorno até antes da condição.

Descobrir mais

Mais ferramentas

FAQ

Perguntas frequentes

Respostas rápidas sobre estruturogramas, diagramas de Nassi-Shneiderman, DIN 66261 e este editor.

Um estruturograma representa graficamente o fluxo de um programa ou algoritmo sem depender de uma linguagem de programação. Cada etapa de processamento é um retângulo; seleções e laços aparecem como blocos aninhados. Como não há saltos, ele exige um fluxo bem estruturado. Isaac Nassi e Ben Shneiderman publicaram essa representação em 1973, por isso ela também é chamada de diagrama de Nassi-Shneiderman, diagrama N-S ou diagrama de Chapin.

Diretamente aqui no editor: ele é gratuito, não exige conta e funciona inteiramente no seu navegador. O estado atual fica apenas no armazenamento local do seu navegador, e as exportações são geradas diretamente no seu dispositivo. No link de compartilhamento, o diagrama fica na parte do endereço após #, que não é enviada ao servidor.

Instrução, sequência, entrada, saída, seleção, seleção de casos, laço com condição no início ou no fim, laço de contagem, laço infinito, saída do laço (interrupção) e chamada de subprograma. Os símbolos seguem a DIN 66261 (símbolos para estruturogramas de Nassi-Shneiderman, 1985). Apenas o processamento paralelo previsto na norma não está disponível no editor.

Os dois descrevem o mesmo fluxo. O estruturograma aninha blocos e não permite saltos livres. O fluxograma de programa (DIN 66001) conecta símbolos por setas; os laços são representados por setas que retornam a uma etapa anterior. Neste editor, você alterna entre as duas visualizações com um clique, pois ambas são desenhadas a partir do mesmo fluxo. Ir para o editor de fluxogramas de programa

O laço com condição no início (while, «enquanto…») verifica a condição antes de cada execução; por isso, seu corpo pode não ser executado. O laço com condição no fim («repita… até…») faz a verificação no final, então o corpo é executado pelo menos uma vez. O laço de contagem (for) tem a condição no início, uma variável de contagem, valores inicial e final e um incremento opcional. Um laço infinito não tem condição e só termina por uma saída do laço (interrupção).

Escreva uma linha por etapa. Você abre e fecha blocos com palavras-chave específicas em alemão (SE, CASO, ENQUANTO, REPITA … ATÉ, PARA … DE … ATÉ) ou inglês (IF, SWITCH, WHILE, REPEAT … UNTIL, FOR … FROM … TO); escolha o idioma no campo de pseudocódigo. O editor não reconhece palavras-chave em outros idiomas, mas você pode escrever o texto dos blocos em qualquer idioma. Ele não converte código Java ou Python nem gera código de programa. Se houver um erro de digitação, ele destaca a linha com uma indicação e mantém o último diagrama válido.

Exporte como PNG em alta resolução, SVG para edição posterior ou PDF em uma página A4 para impressão. Você pode inserir o arquivo PNG como imagem no Word ou LibreOffice Writer. O arquivo de projeto (JSON) permite salvar o fluxo e abri-lo depois; ele inclui um número de versão para que arquivos antigos também funcionem em versões mais recentes do editor.

Sim, há nove modelos com exercícios comuns: fatorial, cálculo de notas, login com 3 tentativas, ano bissexto, maior valor de uma lista, Bubble Sort, máquina de bebidas, teste de número primo e adivinhação de números. Você pode carregá-los em «Carregar modelo de exemplo» e alterá-los livremente. Se precisar desenhar à mão na prova, o editor ajuda você a praticar e conferir o resultado.

Mais alguma pergunta?

Contatar o suporte
Do fluxo ao programa

Teste o código do seu diagrama de Nassi-Shneiderman em um servidor próprio

Em um VPS da ZAP-Hosting, você tem acesso root completo para usar qualquer linguagem; em um espaço de hospedagem web, PHP e MySQL funcionam imediatamente.

4,4/5 Trustpilot32.000+ Servidores ativosDesde 2010

Sem configuração. Sem riscos. Online em segundos.

Duração flexívelCancele a qualquer momentoOnline em 60 segundos

Procurando mais ferramentas? Ver todas as ferramentas para desenvolvedores