Algorytm
Uporządkowany i uściślony sposób rozwiązywania danego problemu,
zawierający szczegółowy opis wykonywanych czynności w skończonej liczbie kroków.
Etapy rozwiązywania problemów
- Sformułowanie zadania
- Określenie danych wejściowych
- Określenie celu, czyli wyniku
- Poszukiwanie metody rozwiązania, czyli algorytmu
- Przedstawienie algorytmu w odpowiedniej postaci
- Analiza poprawności rozwiązania
- Testowanie rozwiązania dla różnych danych – ocena efektywności przyjętej metody.
Cechy dobrego algorytmu
- Precyzyjność – algorytm nie może pozostawiać dobrowolności w interpretacji zapisu. Każdy, kto z niego korzysta musi rozumieć go w ten sam sposób.
- Skończoność – liczba operacji musi być skończona. Po pewnej ilości kroków algorytm musi dać wynik.
- Poprawność – dla każdego zestawu danych, algorytm prowadzi do poprawnych wyników.
- Jednoznaczność – w każdym przypadku zastosowania algorytmu dla tych samych danych otrzymamy ten sam wynik
- Wykonalność – wszystkie operacje opisane w algorytmie muszą być możliwe do wykonania.
- Szczegółowość – wykonawca algorytmu musi rozumieć opisane czynności i potrafić je wykonywać.
- Uniwersalność – algorytm ma służyć rozwiązywaniu nie tylko jednego konkretnego zadania, ale całej ich grupy.
Sposoby prezentowania algorytmu
Zapis słowny – zawiera opis czynności i kolejność czynności.
Pseudokod – stosowany głównie przez programistów, zawiera konkretne sugestie rozwiązania problemu oraz strukturę podobną do języka programowania. Pomija składnie konkretnego języka, dzięki takiemu zapisowi programista może się skupić tylko na tworzeniu kodu w konkretnym języku.
Lista kroków – to dokładny sposób opisywania obliczeń i ich kolejności. Kroki zawierają opis operacji, które mają być wykonane przez algorytm.Występują tu polecenia związane ze zmianą kolejności wykonania kroków lub polecenia zakończenia algorytmu.
Przykład:
- Do garnuszka wsypać kakao,
- zalać wodą,
- mieszając zagotować,
- do gotującego się kakao dodać chili i cynamon,
- dolać mleko,
- ponownie zagotować,
- kakao przelać do kubka,
- posłodzić miodem,
- udekorować według uznania bitą śmietaną.
Schemat blokowy – prezentuje algorytm w postaci bloków oraz połączeń między nimi. Bloki zawierają operacje, które mają być wykonane, a połączenia wyznaczają kolejność wykonania.
Przykład: