Algorytmika: przykłady algorytmów
Algorytmy

Sposoby zapisu algorytmu

Algorytmy powinny być tak przedstawiane, aby było możliwe ich jednoznaczne odczytanie i zastosowanie. Dlatego teraz poznasz różne sposoby zapisu algorytmów.

Niektóre algorytmy można opisać słownie korzystając z języka potocznego. Jest to proste zwłaszcza wtedy, gdy algorytm jest prosty, a jego wykonawcą  ma być człowiek. Pamiętajmy jednak, iż informatyka zajmuje się opracowywaniem algorytmów, których wykonanie powierzone zostaje komputerom. Dlatego taki sposób zapisu nie zawsze jest wystarczający. Musimy sięgnąć po inne metody.

Z czego składa się algorytm? 
Zanim przejdziemy do zapisywania algorytmu przypomnij sobie czym jest algorytm. W skrócie możemy powiedzieć, że to przepis (plan) na rozwiązanie danego problemu. Nasz algorytm (podobnie jak przepis kulinarny) powinien zawierać opis danych (składników), opis wyników (co zamierzamy przyrządzić) oraz plan działania na to, jak z danych otrzymać wyniki (jak ze składników otrzymać danie).

Algorytm zawiera opis danych, opis wyników oraz plan działania, czyli przetworzenia danych. Możemy to przedstawić tak:

Algorytm =  opis danych+ opis wyników + plan działania
Opis danych i wyników nazywamy specyfikacją algorytmu. W tym wpisie nie będziemy się nią zajmować. Jeśli jesteś ciekawy jak prawidłowo wykonać taki opis przeczytaj Specyfikacja specyfikacja problemu algorytmicznego.
Przejdźmy teraz do tego, jak możemy zapisać algorytm, a w zasadzie tą główną jego część, czyli plan działania, przetworzenia danych. Będziemy to robić zapisując ciąg czynności (działań), które muszą być wykonane w określonej kolejności. Opis czynności występujących w algorytmie nazywamy instrukcjami.

Sposoby zapisu algorytmów:

  • opis słowny
  • lista kroków
  • pseudojęzyk (pseudokod)
  • schemat blokowy
  • drzewo (drzewo algorytmu)
  • język programowania

Załóżmy, że naszym celem jest przedstawienie algorytmu obliczania średniej dwóch liczb. Algorytm ten przedstawimy teraz korzystając z podanych wyżej wszystkich sposobów zapisywania algorytmu.

Zadanie

Napisz algorytm obliczający średnią arytmetyczną dwóch liczb rzeczywistych.

Przykładowe rozwiązania zawierające wszystkie sposoby zapisu algorytmu zaprezentuję poniżej.

Opis słowny

W jaki sposób obliczymy średnią dwóch liczb? Weźmiemy dwie liczby i je zsumujemy, a otrzymany wynik podzielimy przez 2. Wystarczy teraz po prostu to zapisać.

Rozwiązanie 1. Opis słowny:
Weź dwie liczby i dodaj je do siebie. Otrzymany wynik  podziel przez 2.

Lista kroków

Lista kroków  to najprostsza i jednocześnie najbardziej naturalna metoda zapisywania algorytmu. Polega na opisie reguł postępowania za pomocą kolejnych kroków, punktów. Jest to sposób, z którym prawdopodobnie  spotkałeś się na lekcjach matematyki, na których nauczyciel podaje schemat rozwiązania zadania danego typu.

Elementem charakterystycznym w tym sposobie zapisu jest numeracja poszczególnych kroków.

Rozwiązanie 2a. Lista kroków:

Krok 1. Pobierz pierwszą liczbę.
Krok 2. Pobierz drugą liczbę.
Krok 3. Dodaj liczby do siebie.
Krok 4. Wynik sumowania podziel przez 2.
Krok 5. Wyświetl wynik.
Krok 6. Zakończ

Powyższy algorytm możemy zapisać również za pomocą listy kroków pomijając słowo krok:

Rozwiązanie 2b. Lista kroków:
1. Pobierz pierwszą liczbę.
2. Pobierz drugą liczbę.
3. Dodaj liczby do siebie.
4. Wynik sumowania podziel przez 2.
5. Wyświetl wynik.
6. Zakończ

Pseudojęzyk, pseudokod

Pseudojęzyk (zwany również pseudokodem) to sposób  pośredni między listą kroków, a językiem programowania. Zwykle zapis podobny jest do któregoś z popularnych języków programowania, ale jest mniej formalny.

Rozwiązanie 3a. Pseudokod:

Początek
Rzeczywiste a
Rzeczywiste b
suma:= a+b
średnia:= suma/2
Wypisz(średnia)
Koniec

W powyższym pseudokodzie widzimy dwa działania (instrukcje): obliczającą sumę i średnią. Tak naprawdę możemy przecież połączyć je w jedno.

Rozwiązanie 3b. Pseudokod:

Początek 
Rzeczywiste a 
Rzeczywiste b 
średnia:= (a+b)/2 
Wypisz(średnia) 
Koniec

Schemat blokowy

Schemat blokowy to graficzny sposób przedstawienia algorytmu. Składa się on z bloków, zawierających określone działania, oraz połączeń wskazujących kolejność ich wykonywania.

My teraz wracamy do naszego przykładu ze średnią. Jak będzie teraz wyglądał nasz algorytm?

Schemat blokowy algorytmu średnia arytmetyczna
Schemat blokowy algorytmu

Jeśli chcesz wiedzieć więcej o schematach blokowych koniecznie przeczytaj kolejny wpis: Schematy blokowe algorytmów.  A tutaj znajdziesz przykłady schematów blokowych.

Język programowania

Aby zrealizować algorytm za pomocą komputera, zapisujemy go w postaci odpowiednio dobranego języka programowania. Mówiąc w skrócie, piszemy program.

Podsumowanie

Algorytmy można przedstawiać na różne sposoby. Od prostego, czyli po prostu opowiedzeniu o algorytmie, poprzez narysowanie schematu blokowego, aż po język programowania i ostateczną realizację w postaci programu komputerowego. Sposób zapisu dobieramy do konkretnego przypadku.

Ten artykuł jest częścią cyklu „Algorytmy dla uczniów”.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *