Przejdź do treści
Bezpłatne narzędzie

Twórz struktogramy online: edytor diagramów Nassi-Shneidermana

Twórz struktogramy online jako diagramy Nassi-Shneidermana zgodne z DIN 66261: z gotowych bloków lub pseudokodu z niemieckimi bądź angielskimi słowami kluczowymi. Jednym kliknięciem zmienisz widok tego samego przebiegu na schemat blokowy programu. Eksportuj jako PNG, SVG lub PDF. Bezpłatnie, bez rejestracji i w całości w Twojej przeglądarce.

Autor: Justin Schuessler

Przebieg gotowy? Przetestuj jego kod bezpośrednio na własnym serwerze VPS lub hostingu WWW.

Kreator

100 %
Struktogram: FactorialFactorialDane wejściowe: nresult := 1dla i od 1 do nresult := result * iWynik: result

Klawiatura w diagramie: ↑/↓ wybór bloku, Enter edycja tekstu, Alt+↑/↓ przesuwanie, Delete usuwanie, Insert wstawianie elementu, Ctrl+Z/Ctrl+Y cofanie/ponawianie, Ctrl+X/C/V wycinanie/kopiowanie/wklejanie.

Składnia pseudokodu
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

Każdy inny wiersz jest instrukcją; znak \ na początku wiersza sprawia, że jest on zawsze instrukcją, nawet jeśli zaczyna się od słowa kluczowego.

Wcięcia i wielkość liter nie mają znaczenia, a niemieckie i angielskie słowa kluczowe można mieszać. Nie jest generowany ani wykonywany rzeczywisty kod programu.

Kliknij blok na diagramie, aby edytować go tutaj. Kliknij dwukrotnie, aby edytować tekst bezpośrednio na diagramie.

Zapisz i wyeksportuj

Wszystko działa w Twojej przeglądarce: bieżący stan jest zapisywany tylko lokalnie, a link do udostępniania zawiera sam diagram. Żadne dane nie są do nas wysyłane.

Funkcje

Rysuj struktogramy bez kreślenia linii

Opisujesz algorytm, a edytor układa bloki zgodnie z DIN 66261 i aktualizuje oba widoki.

Bloki zgodne z normą

Instrukcja, rozgałęzienie, wybór przypadku, pętla z warunkiem na początku i na końcu, pętla licznikowa, pętla nieskończona, wyjście z pętli i wywołanie podprogramu zgodnie z DIN 66261.

Przełącz na schemat blokowy

Ten sam algorytm jako schemat blokowy programu zgodny z DIN 66001, automatycznie rozmieszczony, z liniami powrotnymi dla pętli.

Edytor typu „kliknij i dodaj”

Wstawiaj elementy przed blokiem, za nim lub wewnątrz niego; edytuj tekst bezpośrednio na diagramie, przesuwaj i usuwaj elementy oraz cofaj zmiany.

Pseudokod w obu kierunkach

Tekst i diagram pozostają zsynchronizowane. Przy literówce edytor wskazuje wiersz i wyświetla podpowiedź, a diagram pozostaje bez zmian.

Eksport i plik projektu

PNG i SVG do dokumentów, PDF w formacie A4 do druku oraz plik projektu (JSON) do zapisania i ponownego otwarcia.

Udostępnianie bez konta

Link do udostępniania zawiera diagram w części adresu po znaku #. Nic nie jest zapisywane na naszych serwerach.

Jak to działa

Jak utworzyć struktogram online

Pięć kroków od szablonu do gotowego pliku, bez konta i pobierania aplikacji.

Krok 1

Wczytaj szablon lub zacznij od nowa

Pod „Wczytaj przykładowy szablon” wybierz jedno z dziewięciu zadań, na przykład sortowanie bąbelkowe lub obliczanie oceny. Kliknij „Nowy”, aby zacząć od pustego schematu.

Krok 2

Wstawiaj bloki

Wybierz z przybornika blok, na przykład rozgałęzienie lub pętlę licznikową, zaznacz istniejący blok i wstaw nowy przed nim, za nim lub wewnątrz niego. Kliknij dwukrotnie, aby edytować tekst bezpośrednio na diagramie.

Krok 3

Lub napisz pseudokod

W polu „Pseudokod” zapisz jeden krok w każdym wierszu, używając niemieckich lub angielskich słów kluczowych. Diagram i tekst pozostają zsynchronizowane; jeśli zrobisz literówkę, edytor wskaże wiersz.

Krok 4

Sprawdź i przełącz widok

Przesuwaj, kopiuj lub usuwaj bloki i cofaj zmiany. W razie potrzeby przełącz się na widok schematu blokowego programu, aby zobaczyć ten sam przebieg w innej postaci.

Krok 5

Eksportuj lub udostępnij

Pobierz struktogram jako PNG, SVG lub PDF (A4), zapisz plik projektu (JSON) albo utwórz link do udostępniania.

Podstawy

Czym jest struktogram?

Struktogram, nazywany też diagramem Nassiego-Shneidermana, diagramem N-S lub diagramem Chapina, przedstawia działanie algorytmu za pomocą zagnieżdżonych bloków. Isaac Nassi i Ben Shneiderman opublikowali tę metodę w 1973 roku, a w Niemczech jej symbole określa norma DIN 66261.

Ponieważ struktogram nie dopuszcza dowolnych skoków, wymusza programowanie strukturalne: sekwencje, rozgałęzienia i pętle są w nim wyraźnie zagnieżdżone. Dlatego uczniowie i studenci używają go do planowania algorytmów, zanim wybiorą język programowania.

W tym edytorze utworzysz struktogramy online bez rysowania linii ani odmierzania pól: edytor oblicza układ bloków na podstawie twojego schematu, a na życzenie przedstawia go również jako schemat blokowy programu.

Pseudokod

Od pseudokodu do struktogramu

Zapisz jeden krok w każdym wierszu, a struktogram będzie powstawał na bieżąco. Edytor rozpoznaje niemieckie i angielskie słowa kluczowe; wielkość liter i wcięcia nie mają znaczenia. Tak wygląda szablon „Silnia”, który edytor pokazuje przy pierwszym otwarciu:

Z niemieckimi słowami kluczowymi

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

Z angielskimi słowami kluczowymi

PROGRAM Factorial
INPUT n
result := 1
FOR i FROM 1 TO n
  result := result * i
END FOR
OUTPUT result
Słowa kluczowe bloków strukturalnych
Blok budowlanyNiemieckiAngielski
Dane wejścioweEINGABE xINPUT x
WynikAUSGABE xOUTPUT x
PodprogramAUFRUF p(x)CALL p(x)
RozgałęzienieWENN … DANN … SONST … ENDE WENNIF … THEN … ELSE … END IF
Wybór przypadkuFALLS x FALL 1: … SONST: … ENDE FALLSSWITCH x CASE 1: … DEFAULT: … END SWITCH
Pętla z warunkiem na początkuSOLANGE … ENDE SOLANGEWHILE … END WHILE
Pętla z warunkiem na końcuWIEDERHOLE … BIS …REPEAT … UNTIL …
Pętla z licznikiemFÜR i VON 1 BIS n … ENDE FÜRFOR i FROM 1 TO n … END FOR
Pętla nieskończonaENDLOSSCHLEIFE … ENDE ENDLOSSCHLEIFELOOP … END LOOP
Wyjście z pętli (przerwanie)ABBRUCHBREAK

Edytor nie rozpoznaje słów kluczowych w innych językach — takie wiersze stają się zwykłymi instrukcjami. Teksty wewnątrz bloków, czyli warunki, instrukcje i nazwy, możesz pisać w dowolnym języku. Jeśli zrobisz literówkę, edytor wskaże wiersz i zachowa ostatni poprawny diagram.

Szablony ćwiczeń

Przykładowe struktogramy do ćwiczeń

Dziewięć typowych zadań ćwiczeniowych z lekcji informatyki, kursów i studiów jest już dostępnych. Wczytaj je przez „Wczytaj przykładowy szablon”, a potem dowolnie zmieniaj. Szablony używają słów kluczowych wybranych przy polu pseudokodu: niemieckich lub angielskich.

  • Silnia
  • Obliczanie ocen
  • Logowanie z 3 próbami
  • Rok przestępny
  • Maksimum z listy
  • Sortowanie bąbelkowe
  • Automat z napojami
  • Test liczby pierwszej
  • Zgadywanie liczb

DIN 66261

Najważniejsze symbole struktogramu

Bloki strukturalne Nassi-Shneidermana, które może rysować edytor. Każdy blok ma dokładnie jedno wejście u góry i jedno wyjście na dole. Edytor nie obsługuje przetwarzania równoległego z normy DIN 66261.

Instrukcja (blok strukturalny)suma := suma + liczba

Instrukcja (blok strukturalny)

Prostokąt oznacza pojedynczy krok przetwarzania, np. przypisanie lub obliczenie.

SekwencjaDane wejściowe: liczbakwadrat := liczba * liczbaWynik: kwadrat

Sekwencja

Bloki ustawione jeden pod drugim są wykonywane kolejno od góry do dołu. Operacje wejścia i wyjścia są zwykłymi blokami instrukcji.

Rozgałęzienie (wybór)liczba > 0taknieWynik: „pozytywny”∅

Rozgałęzienie (wybór)

Trójkąt z warunkiem dzieli przepływ na gałąź „Tak” i „Nie”. Pusta gałąź jest oznaczona symbolem ∅.

Wybór przypadku (wybór wielokrotny)x1a := 102a := 20w przeciwnym raziea := 0

Wybór przypadku (wybór wielokrotny)

W zależności od wartości wyrażenia wykonywany jest dokładnie jeden przypadek. Wartości przypadków znajdują się bezpośrednio pod przekątną, a ostatni przypadek (często „w przeciwnym razie” dla pozostałych wartości) – w prawym trójkącie.

Pętla z warunkiem na początkudopóki i <= 10i := i + 1

Pętla z warunkiem na początku

Warunek znajduje się na górze i jest sprawdzany przed każdym obiegiem pętli. Jeśli jest fałszywy już na początku, ciało pętli nie wykona się ani razu.

Pętla z warunkiem na końcuDane wejściowe: liczbado liczba > 0

Pętla z warunkiem na końcu

Warunek znajduje się na dole: ciało pętli wykona się co najmniej raz i będzie powtarzane, aż warunek zostanie spełniony.

Pętla z licznikiemdla i od 1 do 10Wynik: i

Pętla z licznikiem

Pętla z warunkiem na początku, zmienną licznikową, wartością początkową i końcową oraz opcjonalnym krokiem.

Wywołanie podprogramusortuj(lista)

Wywołanie podprogramu

Blok z podwójnymi liniami bocznymi wywołuje osobny podprogram opisany w innym miejscu.

Pętla nieskończonaMenuDane wejściowe: wybórwykonaj(wybór)

Pętla nieskończona

Powtarzanie bez warunku: górny pasek (opcjonalnie z etykietą), pasek po lewej i dolny pasek. Pętlę można opuścić tylko przez wyjście z pętli.

Wyjście z pętli (przerwanie)Menu

Wyjście z pętli (przerwanie)

Klin po lewej stronie opuszcza najbliższą otaczającą go pętlę; etykieta wskazuje opuszczany blok. Wykonywanie jest następnie kontynuowane od bloku za tą pętlą.

DIN 66001

Najważniejsze symbole schematu blokowego

Symbole normy DIN 66001 używane przez edytor w schematach blokowych. Elementy są rozmieszczane automatycznie — nie musisz niczego przesuwać.

Symbol graniczny (początek/koniec)Start

Symbol graniczny (początek/koniec)

Owal oznacza początek i koniec schematu blokowego.

Operacjasuma := suma + liczba

Operacja

Prostokąt oznacza krok przetwarzania, np. przypisanie lub obliczenie.

Wejście/wyjścieDane wejściowe: liczba

Wejście/wyjście

Równoległobok wskazuje miejsce wczytywania lub wyprowadzania danych.

Rozgałęzienieliczba > 0

Rozgałęzienie

Romb zawiera warunek. Zależnie od wyniku przepływ biegnie wyjściem „Tak” lub „Nie”.

Podprogramsortuj(lista)

Podprogram

Prostokąt z podwójnymi liniami bocznymi wywołuje podprogram, który ma własny schemat blokowy.

Linia przepływuDane wejściowe: liczbaWynik: liczba

Linia przepływu

Linie zakończone strzałką łączą symbole i wskazują kolejność. Standardowo przebieg prowadzi z góry na dół.

Rozgałęzienie ze scaleniemliczba > 0taknies := 1s := -1

Rozgałęzienie ze scaleniem

Po rozgałęzieniu obie ścieżki ponownie łączą się w jednym punkcie, zanim proces będzie kontynuowany.

Granica pętli (pętla nieskończona)MenuDane wejściowe: wybórMenu

Granica pętli (pętla nieskończona)

Sześciokąt ze ściętymi górnymi narożnikami oznacza początek pętli, a sześciokąt ze ściętymi dolnymi narożnikami — jej koniec. Edytor używa tej pary do oznaczania pętli nieskończonej.

Punkt wyjściaPętla nieskończonagotowetaknieAdalej()Pętla nieskończonaA

Punkt wyjścia

Okrąg z literą łączy dwa miejsca bez długiej linii. Wyjście z pętli kończy się w okręgu A, a przepływ jest kontynuowany od okręgu A za pętlą.

Pętla z powrotemi <= 10taki := i + 1nie

Pętla z powrotem

Pętla powstaje przez rozgałęzienie i linię powrotną prowadzącą przed warunek.

Odkryj więcej

Więcej narzędzi

FAQ

Często zadawane pytania

Krótkie odpowiedzi na pytania o struktogramy, diagramy Nassi-Shneidermana, DIN 66261 i ten edytor.

Struktogram przedstawia graficznie przebieg programu lub algorytmu bez przypisywania go do konkretnego języka programowania. Każdy krok jest prostokątem, a rozgałęzienia i pętle tworzą zagnieżdżone bloki. Brak skoków wymusza uporządkowany przebieg. Isaac Nassi i Ben Shneiderman opublikowali tę metodę w 1973 roku, dlatego jest też znana jako diagram Nassi-Shneidermana, diagram N-S lub diagram Chapina.

Bezpośrednio tutaj, w edytorze: jest bezpłatny, nie wymaga konta i działa w całości w Twojej przeglądarce. Bieżący stan znajduje się tylko w lokalnej pamięci przeglądarki, a pliki eksportu powstają bezpośrednio na Twoim urządzeniu. W linku do udostępniania diagram znajduje się w części adresu po znaku #, która nie jest przesyłana na serwer.

Instrukcja, sekwencja, wejście, wyjście, rozgałęzienie, wybór wariantu, pętla z warunkiem na początku i na końcu, pętla licznikowa, pętla nieskończona, wyjście (przerwanie) oraz wywołanie podprogramu. Symbole są zgodne z normą DIN 66261 (symbole struktogramów Nassi-Shneidermana, 1985). Edytor nie obsługuje jedynie przetwarzania równoległego przewidzianego w tej normie.

Oba przedstawiają ten sam przebieg. Struktogram zagnieżdża bloki i nie dopuszcza dowolnych skoków. Schemat blokowy programu (PAP, DIN 66001) łączy symbole strzałkami, a pętle tworzy za pomocą strzałek powrotnych. W tym edytorze przełączysz się między obiema postaciami jednym kliknięciem, ponieważ powstają z tego samego przebiegu. Przejdź do edytora schematów blokowych programu

Pętla z warunkiem na początku (while, „dopóki…”) sprawdza warunek przed każdym obiegiem, więc jej instrukcje mogą nie wykonać się ani razu. Pętla z warunkiem na końcu („powtarzaj… aż…”) sprawdza go na końcu, więc wykonuje się co najmniej raz. Pętla licznikowa (for) ma zmienną licznikową, wartość początkową i końcową oraz opcjonalny krok. Pętla nieskończona nie ma warunku i można ją opuścić tylko przez wyjście (przerwanie).

Jeden krok w każdym wierszu. Bloki otwierasz i zamykasz ustalonymi słowami kluczowymi — po niemiecku (WENN, FALLS, SOLANGE, WIEDERHOLE … BIS, FÜR … VON … BIS) lub po angielsku (IF, SWITCH, WHILE, REPEAT … UNTIL, FOR … FROM … TO). Język wybierasz przy polu pseudokodu. Edytor nie rozpoznaje słów kluczowych w innych językach, ale teksty wewnątrz bloków możesz pisać w dowolnym języku. Edytor nie konwertuje kodu w Javie ani Pythonie i nie generuje kodu programu. Jeśli zrobisz literówkę, wskaże wiersz i zachowa ostatni poprawny diagram.

Eksportuj jako PNG w wysokiej rozdzielczości, SVG do dalszej edycji lub PDF na stronie A4 do wydruku. Plik PNG możesz wstawić jako obraz do Worda lub LibreOffice Writera. Plik projektu (JSON) pozwala zapisać schemat i otworzyć go później; zawiera numer wersji, dzięki czemu starsze pliki działają również w nowszych wersjach edytora.

Tak, dostępnych jest dziewięć szablonów z typowymi zadaniami: silnia, obliczanie oceny, logowanie z 3 próbami, rok przestępny, maksimum z listy, sortowanie bąbelkowe, automat z napojami, test pierwszości i zgadywanie liczby. Wczytaj je przez „Wczytaj przykładowy szablon” i dowolnie zmieniaj. Jeśli na egzaminie rysujesz ręcznie, edytor pomoże Ci ćwiczyć i sprawdzać wyniki.

Masz dodatkowe pytania?

Kontakt z pomocą techniczną
Od schematu do programu

Wypróbuj kod ze swojego struktogramu na własnym serwerze

Na serwerze VPS ZAP-Hosting masz pełny dostęp root i możesz używać dowolnego języka, a na hostingu WWW PHP i MySQL działają od razu.

4,4/5 Trustpilot32 000+ Aktywne serweryOd 2010 roku

Bez konfiguracji. Bez ryzyka. Online w kilka sekund.

Elastyczny okres obowiązywaniaAnuluj w dowolnym momencieOnline w 60 sekund

Szukasz więcej narzędzi? Zobacz wszystkie narzędzia dla programistów