I_P_W14_M03_Java Algorytm i jego własności
Zanim Przypomnijmy sobie pojęcie algorytmu zastanówmy się czym jest problem.
Problem
Jak już wiemy, algorytmy służą do rozwiązywania problemów. Jak zdefiniować problem?
Problem możemy zdefiniować jako zbiór danych wejściowych, ich definicje oraz pytanie lub polecenie do wykonania.
Przed przystąpieniem do realizacji algorytmu rozwiązującego dany problem, powinno się określić specyfikację problemu, na którą się składa:
określenie zadania do wykonania,
zdefiniowanie danych wejściowych,
określenie relacji między danymi i wynikami,
zdefiniowanie wyniku.
Wiemy już czym jest problem odpowiedzmy sobie teraz na pytanie czym jest algorytm.
Algorytm
Algorytmem nazywamy przepis postępowania, który prowadzi do rozwiązania ustalonego problemu. Przepis ten określa ciąg czynności elementarnych, które należy w tym celu wykonać.
W wielu książkach poświęconych algorytmice wykorzystuje się przykład przepisu kulinarnego, by wyjaśnić najważniejsze definicje związane z algorytmami. W swojej książce Piramidy, szyszki i inne konstrukcje algorytmiczne profesor Maciej Sysło wykazuje, że książka kucharska raczej nie powinna być traktowana jako zbiór algorytmów.
Zapoznaj się ze specyfikacją przykładowego problemu.
Zadanie:
Postawmy sobie teraz problem obliczenia pola prostokąta o bokach długości a i b.
Specyfikacja problemu:
Dane:
a, b – liczby rzeczywiste dodatnie określające długości boków prostokąta
Wynik:
P – liczba rzeczywista dodatnia określająca pole prostokąta
Spróbujmy zapisać algorytm, który rozwiąże zaprezentowany problem.
Sposoby zapisu algorytmów
Algorytmy można zapisywać za pomocą:
listy kroków,
pseudokodu,
konkretnego języka programowania.
Do napisania algorytmu rozwiązującego podany problem wykorzystamy język programowania Java.
Program
Komputerową realizację algorytmu nazywamy programem. Algorytm jest zapisany w taki sposób, aby był zrozumiały dla komputera – wykorzystuje do tego języki programowania.
Języki programowania to zbiory zasad określających, kiedy dany ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje.
Algorytmika
Algorytmika jest dziedziną informatyki zajmującą się projektowaniem, analizą, badaniem algorytmów.
Termin ten pierwszy raz został użyty przez Davida Harela w tytule jego książki Rzecz o istocie informatyki – algorytmika.
W ten sposób pisze on ogólnie o relacji informatyki oraz algorytmiki:
Algorytmika to więcej niż dział informatyki. Tkwi ona w centrum wszystkich działów informatyki i z całą uczciwością można o niej powiedzieć, że jest ważna dla większości nauk matematyczno–przyrodniczych, ekonomii i techniki. Sama natura algorytmiki czyni ją jednak szczególnie odpowiednią do stosowania w tych dyscyplinach, które czerpią korzyści z posługiwania się komputerami; takich dyscyplin jest już przytłaczająca większość.
Biorąc pod uwagę, ile lat minęło od wydania książki, można bezpiecznie założyć, że liczba dyscyplin, które czerpią korzyści z posługiwania się komputerami rośnie. Z tego względu znajomość algorytmiki oraz biegłość w obsłudze komputera wydają się kompetencjami jeszcze bardziej pożądanymi.
Słownik
przepis postępowania prowadzący do rozwiązania ustalonego problemu, określający ciąg czynności elementarnych, które należy w tym celu wykonać
dziedzina zajmująca się tworzeniem algorytmów
realizacja algorytmu w konkretnym języku programowania
zespół dyscyplin naukowych i technicznych, zajmujących się automatycznym przetwarzaniem, przechowywaniem i przesyłaniem informacji oraz projektowaniem, budową i eksploatacją niezbędnych do tego celu środków technicznych