Opisanie algorytmu przy pomocy opisu słownego jest, wydawałoby się, najbardziej naturalną metodą opisu czynności, które należy wykonać. Zauważ jednak, że w tym opisie jest sporo skoków. Z punktu 4 do 6, z 3 do 1, etc. Tworzenie takiego opisu jest dość kłopotliwe, zwłaszcza gdy podczas tworzenia zmieniamy liczby opisujące nam konkretny krok, gdy chcemy dodać coś na samej górze i tak dalej.

Przedstawiam schemat blokowy algorytmu, czyli narzędzie do jego graficznej prezentacji. Taki schemat składa się z bloków, które mogą przybrać następującą formę, a tym samym konkretne znaczenie (tak naprawdę kształty są dowolne, grunt aby być systematycznym i NIGDY nie używać ich naprzemiennie. Jeżeli rombem oznaczamy instrukcję warunkową to w innych warunkach także musi być to romb): elementy-schematu-blokowego.pngElementy schematu blokowego

Jak widać powyżej, elementów nie jest wcale dużo. Poniżej graficzna prezentacja algorytmu do sortowania uczestników warsztatów.

algorytm-sort.pngSchemat blokowy algorytmu sortujący alfabetycznie listę uczestników

Jak widać, użyłem tutaj “skoku” do innego algorytmu, tak jak miało to miejsce w przypadku opisu słownego. Jak według Ciebie powinien wyglądać schemat blokowy podalgorytmu, który określa, która z podanych mu dwóch nazw ma alfabetyczne pierwszeństwo?

Jest kilka zasad, których należy się trzymać tworząc schematy blokowe:

  1. Ścieżki algorytmu, w miarę możliwości, nie powinny się przecinać. Jeżeli zachodzi potrzeba przecięcia się linii, które prowadzą do różnych instrukcji, można użyć zapisu: cross-path.pngGraficzne rozwiązanie krzyżujących się połączeń
  2. Z każdej instrukcji wychodzi dokładnie jedna ścieżka prowadząca do kolejnej instrukcji. Wyjątkiem jest instrukcja warunkowa, która prowadzi albo do jednej instrukcji jeżeli warunek jest spełniony albo do drugiej, gdy warunek nie jest spełniony.
  3. Kierunek wykonywania się instrukcji określają strzałki, schemat może być wykonywany zarówno: z góry na dół, z dołu do góry, z lewej do prawej, z prawej do lewej.

Schemat blokowy to nie jest jedyny sposób na graficzną prezentację algorytmów. Istnieje cała gama technik, które można wykorzystać. Na przykład, gdy zachodzi potrzeba przedstawienia stanów, w których coś może się znaleźć oraz tranzycji między nimi, używam FSM. Swego czasu, mianem potężnego narzędzia graficznego, szczycił się UML. Możesz także tworzyć własne struktury, które pozwalają Tobie na prezentację algorytmu- po pewnym czasie zaczniesz modyfikować znane Tobie techniki aż wyrobisz sobie swoją ulubioną metodę.

Powiązane tematy

URL - adres internetowy

URL - adres internetowy

"W internecie jest wszystko." Do każdego zasobu jest tak samo daleko, wystarczy znać jego adres. Adres zasobu to ścieżka, która prowadzi dokładnie do tej rzeczy. W niej samej zakodowane jest sporo interesujących informacji. Czytaj całość

URL - adres internetowy

URL - adres internetowy

"W internecie jest wszystko." Do każdego zasobu jest tak samo daleko, wystarczy znać jego adres. Adres zasobu to ścieżka, która prowadzi dokładnie do tej rzeczy. W niej samej zakodowane jest sporo interesujących informacji. Czytaj całość

Sleep- zatrzymywanie programu na pewien czas

Sleep- zatrzymywanie programu na pewien czas

System operacyjny, który zarządza uruchomionymi programami, przydziela każdemu porcję czasu procesora, który wykorzystuje ją na wykonanie swojego algorytmu. Program nie może pracować cały czas, bez odpoczynku, jednak istnieje możliwość odłożenia jego pracy w czasie. Czytaj całość


Piotr Poźniak

Piotr Poźniak

Programuję od ponad 15 lat. Prowadzę software house. Angażuję i zachęcam wszystkich do programowania w ramach inicjatywy Programowanie jest łatwe.

Bądź pierwszy, podziel się swoją opinią!

Obrazek przedstawiający nadgryzione ciasteczko