Naar de inhoud springen
Gratis tool

Online een stroomdiagram maken: gratis editor

Met deze editor maak je stroomdiagrammen volgens DIN 66001 op basis van bouwstenen of pseudocode. De editor rangschikt de symbolen automatisch: schrijf bijvoorbeeld ‘WHILE x < 10’ en je krijgt een ruit, lusinhoud en terugkoppeling. Met één druk op de knop wordt hetzelfde proces een structogram. Exporteer als PNG, SVG of PDF.

Gebouwd door Justin Schuessler

Gratis, zonder account en zonder installatie: de editor draait volledig in je browser en je diagrammen worden niet naar ons verzonden.

Proces klaar? Probeer de bijbehorende code direct uit op een eigen VPS of webruimte.

Bouwstenen

100 %
Stroomdiagram: FactorialFactorialStartInvoer: nresult := 1i := 1i <= njaresult := result * ii := i + 1neeUitvoer: resultEinde

Toetsenbordbediening in het diagram: ↑/↓ blok selecteren, Enter tekst bewerken, Alt+↑/↓ verplaatsen, Delete verwijderen, Insert bouwsteen invoegen, Ctrl+Z/Ctrl+Y ongedaan maken/opnieuw uitvoeren, Ctrl+X/C/V knippen/kopiëren/plakken.

Pseudocodesyntaxis
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

Elke andere regel is een instructie; met \ aan het begin van een regel is die regel altijd een instructie, ook als deze met een sleutelwoord begint.

Inspringing en hoofdletters maken niet uit, en je mag Duitse en Engelse sleutelwoorden combineren. Er wordt geen echte programmacode gegenereerd of uitgevoerd.

Klik op een blok in het diagram om het hier te bewerken. Dubbelklik om de tekst direct in het diagram te bewerken.

Opslaan en exporteren

Alles draait in je browser: de huidige stand wordt alleen lokaal opgeslagen en de deellink bevat het diagram zelf. Er worden geen gegevens naar ons verzonden.

Functies

Programmastroomschema's zonder vakjes te verslepen

Je beschrijft het proces; de editor plaatst de symbolen volgens DIN 66001, tekent de lijnen en houdt beide weergaven actueel.

Symbolen volgens DIN 66001

Start-/eindsymbool, bewerking, beslissing, invoer/uitvoer en subroutine, verbonden met lijnen en teruglopende lijnen voor lussen.

Overschakelen naar structogram

Hetzelfde proces als structogram volgens DIN 66261 (Nassi-Shneiderman), zonder dat je iets opnieuw hoeft te tekenen.

Klik-en-bouwsysteem

Plaats bouwstenen voor, na of binnen een blok; bewerk tekst direct in het diagram, verplaats, verwijder of maak wijzigingen ongedaan.

Pseudocode in beide richtingen

Tekst en diagram blijven synchroon. Bij een typefout toont de editor de regel en een aanwijzing; het diagram blijft zichtbaar.

Export en projectbestand

PNG en SVG voor documenten, PDF op A4 om af te drukken en een projectbestand (JSON) om op te slaan en opnieuw te openen.

Delen zonder account

De deellink bevat het diagram in het adres. Er wordt niets op onze servers opgeslagen.

Zo werkt het

Zo maak je een stroomdiagram

Begin met een sjabloon of een leeg stroomschema en werk op de manier die je prettig vindt.

Stap 1

Een sjabloon laden of leeg beginnen

Kies een van de negen voorbeeldsjablonen, zoals faculteit, schrikkeljaar of bubblesort, of begin met ‘Nieuw’ aan een leeg proces.

Stap 2

Bouw het proces op met klikken

Kies een bouwsteen en plaats deze vóór of na een andere bouwsteen, of in een blok. Met een dubbelklik bewerk je de tekst direct in het diagram.

Stap 3

Of schrijf pseudocode

Schrijf het proces met Duitse of Engelse sleutelwoorden in het pseudocodeveld. Het diagram wordt automatisch ingedeeld; bij typefouten toont de editor het regelnummer.

Stap 4

Exporteren of delen

Download het stroomdiagram als PNG, SVG of PDF (A4), sla het projectbestand (JSON) op of kopieer een deellink.

DIN 66001

De belangrijkste symbolen in het stroomdiagram

De symbolen uit DIN 66001 die de editor voor stroomdiagrammen gebruikt. Het diagram wordt automatisch ingedeeld; je hoeft niets te verplaatsen.

Begin-/eindpuntStart

Begin-/eindpunt

Het ovaal markeert het begin en einde van het stroomdiagram.

Bewerkingsumme := summe + zahl

Bewerking

Een rechthoek staat voor een verwerkingsstap, bijvoorbeeld een toewijzing of berekening.

Invoer/uitvoerInvoer: zahl

Invoer/uitvoer

Het parallellogram geeft aan waar gegevens worden ingevoerd of weergegeven.

Vertakkingzahl > 0

Vertakking

De ruit bevat een voorwaarde. Afhankelijk van het resultaat gaat het proces verder via de ja- of nee-uitgang.

Subprogrammasortiere(liste)

Subprogramma

Een rechthoek met dubbele zijlijnen roept een subprogramma aan met een eigen stroomdiagram.

VerbindingslijnInvoer: zahlUitvoer: zahl

Verbindingslijn

Lijnen met een pijlpunt verbinden de symbolen en geven de volgorde aan. Normaal verloopt de stroom van boven naar beneden.

Vertakking met samenvoegingzahl > 0janees := 1s := -1

Vertakking met samenvoeging

Na een vertakking komen beide paden weer samen op één punt voordat de stroom verdergaat.

Lusbegrenzing (oneindige lus)MenuInvoer: wahlMenu

Lusbegrenzing (oneindige lus)

Een zeshoek met afgeschuinde bovenhoeken markeert het begin van de lus, een met afgeschuinde onderhoeken het einde. De editor gebruikt dit paar voor de oneindige lus.

Verbindingspunt (uitsprong)Oneindige lusklaarjaneeAweiter()Oneindige lusA

Verbindingspunt (uitsprong)

Een cirkel met een letter verbindt twee punten zonder lange lijn. Een uitsprong eindigt bij cirkel A; het proces gaat verder bij cirkel A na de lus.

Lus met terugsprongi <= 10jai := i + 1nee

Lus met terugsprong

Een lus ontstaat door een vertakking en een teruggaande lijn naar vóór de voorwaarde.

Besturingsstructuren

Lussen en vertakkingen in een stroomdiagram

Zo tekent de editor veelgebruikte besturingsstructuren en zo schrijf je ze in pseudocode, met Duitse of Engelse sleutelwoorden.

Vertakking

De ruit bevat de voorwaarde. De takken splitsen naar links en rechts en komen daarna weer samen. Pseudocode: ALS … DAN … ANDERS … EINDE ALS of IF … THEN … ELSE … END IF.

Meervoudige vertakking (switch case)

Een ruit met de expressie en één tak per geval, eventueel met een anders-tak. Pseudocode: FALLS x … FALL 1: … SONST: … ENDE FALLS of SWITCH x … CASE 1: … DEFAULT: … END SWITCH.

Kopgestuurde lus

De ruit staat vóór de inhoud. De terugkoppelingslijn voert links terug naar de voorwaarde; de nee-tak gaat rechts verder. Pseudocode: ZOLANG … EINDE ZOLANG of WHILE … END WHILE.

Voetgestuurde lus

De inhoud wordt minstens één keer uitgevoerd; de ruit met de voorwaarde staat erna. Pseudocode: HERHAAL … TOTDAT … of REPEAT … UNTIL ….

Telus

Getekend met een beginwaarde, voorwaarde, inhoud en verhoging van de telvariabele. Pseudocode: VOOR i VAN 1 TOT 10 … EINDE VOOR of FOR i FROM 1 TO 10 … END FOR, eventueel met STAP of STEP.

Oneindige lus met onderbreking

Het symboolpaar voor lusbegrenzing omsluit de inhoud; een onderbreking voert via een verbindingspunt naar een punt na de lus. Pseudocode: ONEINDIGE LUS … STOP … EINDE ONEINDIGE LUS of LOOP … BREAK … END LOOP.

Voorbeelden

Voorbeelden van stroomdiagrammen om mee te oefenen

Negen typische oefenopgaven uit het onderwijs zijn als sjabloon beschikbaar. Laad er een via ‘Voorbeeldsjabloon laden’, bekijk het voltooide stroomdiagram met pseudocode en pas het aan.

  • Faculteit
  • Cijferberekening
  • Inloggen met 3 pogingen
  • Schrikkeljaar
  • Maximum van een lijst
  • Bubblesort
  • Drankautomaat
  • Priemgetaltest
  • Getallen raden

DIN 66261

De belangrijkste symbolen in het structogram

De Nassi-Shneiderman-structuurblokken die de editor kan tekenen. Elk blok heeft precies één ingang bovenaan en één uitgang onderaan. De editor ondersteunt geen parallelle verwerking volgens DIN 66261.

Instructie (structuurblok)summe := summe + zahl

Instructie (structuurblok)

Een rechthoek voor één verwerkingsstap, bijvoorbeeld een toewijzing of berekening.

Opeenvolging (sequentie)Invoer: zahlquadrat := zahl * zahlUitvoer: vierkant

Opeenvolging (sequentie)

Blokken onder elkaar worden van boven naar beneden na elkaar uitgevoerd. Invoer en uitvoer zijn gewone instructieblokken.

Vertakking (keuze)zahl > 0janeeUitvoer: ‘positief’∅

Vertakking (keuze)

Een driehoek met de voorwaarde splitst het proces in een ja- en een nee-tak. Een lege tak wordt gemarkeerd met ∅.

Gevalsselectie (meervoudige selectie)x1a := 102a := 20andersa := 0

Gevalsselectie (meervoudige selectie)

Afhankelijk van de waarde van een expressie wordt precies één van de gevallen uitgevoerd. De waarden staan direct onder de diagonale lijn; het laatste geval (vaak ‘anders’, voor alle overige waarden) staat in de rechterdriehoek.

Kopgestuurde luszolang i <= 10i := i + 1

Kopgestuurde lus

De voorwaarde staat bovenaan en wordt vóór elke herhaling gecontroleerd. Is deze meteen al onwaar, dan wordt de lusinhoud geen enkele keer uitgevoerd.

Voetgestuurde lusInvoer: zahltot zahl > 0

Voetgestuurde lus

De voorwaarde staat onderaan: de lusinhoud wordt minstens één keer uitgevoerd en herhaald totdat aan de voorwaarde is voldaan.

Telusvoor i van 1 tot 10Uitvoer: i

Telus

Een kopgestuurde lus met een telvariabele, begin- en eindwaarde en optionele stapgrootte.

Aanroep van subprogrammasortiere(liste)

Aanroep van subprogramma

Een blok met dubbele zijlijnen roept een afzonderlijk subprogramma aan dat elders is beschreven.

Oneindige lusMenuInvoer: wahluitvoeren(keuze)

Oneindige lus

Een herhaling zonder voorwaarde: bovenste band (optioneel met naam), balk links en onderste band. Je verlaat deze alleen via een uitsprong.

Uitsprong (afbreken)Menu

Uitsprong (afbreken)

De wig links verlaat de binnenste omliggende lus; de naam geeft aan welk blok wordt verlaten. Daarna gaat het proces verder met het blok na die lus.

Meer ontdekken

Meer tools

FAQ

Veelgestelde vragen

Korte antwoorden over programmastroomschema's, DIN 66001 en deze editor.

Een stroomdiagram geeft het verloop van een programma of algoritme weer als een reeks gestandaardiseerde symbolen die met pijlen verbonden zijn. Het toont de volgorde van instructies, invoer, uitvoer en beslissingen, onafhankelijk van de programmeertaal. Andere namen zijn flowchart en programmastroomdiagram.

Laad een voorbeeldsjabloon in de editor of begin met ‘Nieuw’ aan een leeg proces. Voeg bouwstenen toe met een klik of schrijf het proces als pseudocode; beide blijven gesynchroniseerd. De editor rangschikt de symbolen automatisch: vertakkingen splitsen naar links en rechts en komen daarna weer samen; terugkoppelingen van lussen lopen links langs de inhoud. Exporteer ten slotte als PNG, SVG of PDF. Gratis en zonder account.

De symbolen zijn vastgelegd in DIN 66001 en internationaal in ISO 5807. De editor gebruikt het begin-/eindsymbool (ovaal), de bewerking (rechthoek), de beslissing (ruit), invoer/uitvoer (parallellogram), de subroutine (rechthoek met dubbele zijlijnen), stroomlijnen met pijlpunten, het verbindingspunt (cirkel met letter) en het symboolpaar voor lusbegrenzing bij een oneindige lus.

Een lus bestaat uit een beslissing en een terugkoppelingslijn. Bij een lus met een voorwaarde aan het begin staat de ruit vóór de inhoud: als aan de voorwaarde is voldaan, wordt de inhoud uitgevoerd en voert de lijn terug naar de ruit. Anders gaat het proces rechts verder. Bij een lus met een voorwaarde aan het einde staat de ruit na de inhoud. Een tellus wordt getekend met een beginwaarde, voorwaarde, inhoud en verhoging van de telvariabele. De editor tekent een oneindige lus met het symboolpaar voor lusbegrenzing; een onderbreking voert via een verbindingspunt naar een punt na de lus. Een meervoudige vertakking (switch case) wordt een ruit met één tak per geval en eventueel een anders-tak.

Eén regel per stap, met sleutelwoorden voor blokken: ALS … DAN … ANDERS … EINDE ALS, KEUZE x met GEVAL 1: en ANDERS: tot EINDE KEUZE, ZOLANG … EINDE ZOLANG, HERHAAL … TOTDAT …, VOOR i VAN 1 TOT 10 … EINDE VOOR, ONEINDIGE LUS … EINDE ONEINDIGE LUS met STOP, plus INVOER, UITVOER en AANROEP. Engelse sleutelwoorden (IF, SWITCH, WHILE, REPEAT, FOR, LOOP, BREAK, INPUT, OUTPUT, CALL) werken ook; bij het pseudocodeveld schakel je tussen beide. De editor herkent geen sleutelwoorden in andere talen: zulke regels worden eenvoudige instructies. Pseudocode die je ergens anders hebt geschreven, plak je gewoon in het veld. Bij een typefout toont de editor de regel met een melding en blijft het laatste geldige diagram behouden.

Beide beschrijven hetzelfde proces. Het stroomdiagram verbindt symbolen met pijlen; lussen ontstaan door terugkoppelingslijnen. Het structogram (DIN 66261, Nassi-Shneiderman-diagram) bevat geneste blokken en heeft geen sprongen. Daardoor is het compacter en dwingt het een gestructureerde oplossing af. In deze editor schakel je tussen beide weergaven, omdat ze op basis van hetzelfde proces worden getekend.

Ja. Exporteer het diagram als PNG in hoge resolutie of als SVG en voeg het bestand in Word, PowerPoint of een ander document in. Voor afdrukken is er een PDF op een A4-pagina. Met het projectbestand (JSON) sla je het proces op om het later weer in de editor te openen.

Je kunt de editor gratis en zonder account gebruiken. Hij draait volledig in je browser: de huidige versie staat alleen in de lokale opslag van je browser en exports worden rechtstreeks op je apparaat gemaakt. Bij een deellink staat het diagram in het deel van het adres na de #, dat niet naar de server wordt verzonden.

Van stroomschema naar programma

Probeer de code van je programmastroomschema uit op een eigen server

Op een VPS van ZAP-Hosting heb je volledige roottoegang voor elke taal; op webruimte werken PHP en MySQL meteen.

4,4/5 Trustpilot32.000+ Actieve serversSinds 2010

Geen installatie. Geen risico. Binnen enkele seconden online.

Flexibele looptijdOp elk moment opzegbaarBinnen 60 seconden online

Op zoek naar meer tools? Alle ontwikkelaarstools bekijken