300 likes | 720 Views
Informatyka. Wprowadzenie do algorytmiki. Cele lekcji. Podczas tej lekcji nauczysz się: rozpoznawać działania algorytmiczne i niealgorytmiczne; zapisywać specyfikację algorytmu; zapisywać algorytmy za pomocą różnych sposobów. Przegląd zagadnień. Działania algorytmiczne i niealgorytmiczne.
E N D
Informatyka Wprowadzenie do algorytmiki
Cele lekcji Podczas tej lekcji nauczysz się: • rozpoznawać działania algorytmiczne i niealgorytmiczne; • zapisywać specyfikację algorytmu; • zapisywać algorytmy za pomocą różnych sposobów.
Przegląd zagadnień • Działania algorytmiczne i niealgorytmiczne. • Podstawowe cechy algorytmów. • Opis słowny algorytmu. • Lista kroków algorytmu. • Schemat blokowy algorytmu.
Działania algorytmiczne i niealgorytmiczne • Większość zadań w życiu traktujemy w sposób standardowy, gdyż nie wymagają one od nas myślenia kreatywnego, lecz jedynie schematycznego działania. Tak jest, gdy kasujemy bilet w tramwaju, szykujemy się do wyjścia do szkoły, a nawet, gdy rozwiązujemy typowe zadanie z fizyki. Taki schemat działania, który za pomocą jednoznacznego sposobu postępowania doprowadza do określonego celu (lub inaczej osiągnięcia zamierzonego wyniku), nazywamy algorytmem. • Istnieje wiele działań, których nie można opisać za pomocą algorytmu. Nazywamy je działaniami niealgorytmicznymi. Algorytmy nie mają zastosowania w twórczości artystycznej, np. podczas pisania wiersza, malowania obrazu czy komponowania muzyki. Pomimo, że istnieją pewne zasady tworzenia w tych dziedzinach, to trudno tu mówić o algorytmach, bo w końcu, jakiego algorytmu używał na przykład Adam Mickiewicz, kiedy pisał Pana Tadeusza?
Definicja algorytmu Algorytm - jest to sformalizowany zestaw czynności, które należy wykonać, żeby uzyskać założony wynik. W szczególności, aby wyliczyć wynik na podstawie określonych danych. • Trzeba jednak zaznaczyć, że wiele algorytmów dotyczy kwestii niezwiązanych z obliczeniami. • Źródło: pl.wikipedia.org
Przykład algorytmu • Niektóre działania wykonywane według określonego algorytmu uczymy się wykonywać już jako dzieci. • Algorytm przechodzenia przez ulicę: • Najpierw patrzymy w prawo. • Jeśli z prawej strony nic nie jedzie, patrzymy w lewo. • Następnie ponownie patrzymy w prawo, i jeśli nie jedzie żadne auto lub znajduje się bardzo daleko, możemy bezpiecznie przejść przez ulicę.
Podstawowe cechy algorytmów • Do stworzenia algorytmu oprócz zestawu czynności trzeba jeszcze dwóch elementów, które są niezbędne przy jego opisywaniu. Są to: • dane, które należy wprowadzić na początku; • cel, który ma zostać osiągnięty (czyli oczekiwany wynik). • Te dwa elementy oraz relację między nimi nazywamy specyfikacją algorytmu. • Specyfikacja algorytmu – dokładny opis zadania (problemu), które ma być wykonane. W specyfikacji należy określić dane konieczne do wprowadzenia, by rozwiązać zadanie oraz wyniki, które mają być skutkiem działania algorytmu.
Podstawowe cechy algorytmów - przykład • Patrząc na to schematycznie mamy 3 elementy – brudne rzeczy, pranie w pralce oraz czyste rzeczy, które możemy nosić. • Rozważając tę samą sytuację z punktu widzenia algorytmiki – brudne rzeczy są danymi wejściowymi, bez których nie może być prania. Pralka realizuje algorytm prania. Natomiast wynikiem algorytmu prania są czyste rzeczy (jeżeli po praniu mielibyśmy brudne ubrania, oznacza to, że nasz algorytm prania jest zły).
Jeszcze o algorytmach • Algorytm nazywamy skończonym, jeśli jego działanie realizowane jest w skończonej liczbie kroków. Może to trwać długo, ale zawsze musi się zakończyć otrzymaniem wyniku. • Algorytm nazywamy jednoznacznym (poprawnym), jeśli zawsze dla takich samych danych wejściowych zwraca takie same wyniki (dziwne byłoby zachowanie kalkulatora, gdyby przy obliczaniu sumy 2 + 2 pokazywał różne wyniki). • Algorytm jest szczegółowy, jeżeli wykonawca algorytmu rozumie opisane czynności i potrafi je zrealizować. • Algorytm nazywamy uniwersalnym, jeżeli służy do rozwiązania pewnej grupy zadań, a nie tylko jednego zadania, np. algorytm szukania miejsca zerowego funkcji liniowej ax + b = 0 dla dowolnych współczynników a i b, a nie tylko dla określonych wartości, np. a = 4 i b = 3. • Algorytm nazywamy zupełnym, jeśli uwzględnia wszystkie możliwe teoretycznie warianty rozwiązania problemu.
Opis słowny algorytmu • Najprostszą formą zapisu algorytmu jest opis słowny. Możemy powiedzieć, że forma ta jest pierwszym, niezbyt ścisłym opisem postępowania. Określa ona raczej ogólny schemat działania, bez wyliczania poszczególnych kroków. • Opis słowny pozwala zrozumieć ideę algorytmu, jednak nie pokazuje dokładnie, jak dany problem został rozwiązany.
Lista kroków algorytmu • Zapis algorytmu w postaci listy kroków polega na opisaniu poszczególnych działań w punktach. • Kolejność ich wykonywania wynika z porządku, w jakim są podane oraz z podanych poleceń (czasami musimy się cofnąć do wcześniejszego kroku). • Lista kroków jest prostym i dość szczegółowym opisem działań wchodzących w skład algorytmu. Jednak dla bardziej złożonychalgorytmów taki opis może być mniej czytelny.
Schemat blokowy algorytmu • Schemat blokowy to graficzny sposób zapisu algorytmu, gdzie za pomocą ściśle określonych figur geometrycznych, powiązanych trwale z określonymi typami instrukcji oraz połączeń opisany jest sposób rozwiązania problemu. • Pozwala on na bardziej czytelne ilustrowanie kroków procesu przetwarzania informacji (czyli samego algorytmu). • Ta forma zapisu algorytmu jest często wykorzystywana ze względu na dużą czytelność oraz łatwość przeniesienia na dowolny język programowania. • W schematach blokowych do przedstawienia algorytmu wykorzystujemy elementy nazywane blokami lub skrzynkami.
Drzewo algorytmu • Drzewo algorytmu przedstawia zapis działań w postaci schematu, gdzie początek algorytmu nazywamy korzeniem. • W opracowaniach algorytmicznych drzewo rysuje się „do góry nogami”: na samej górze jest korzeń, z którego wychodzą gałęzie, a elementy końcowe nazywamy liśćmi.
Podsumowanie • Działania algorytmiczne i niealgorytmiczne. • Podstawowe cechy algorytmów. • Opis słowny algorytmu. • Lista kroków algorytmu. • Schemat blokowy algorytmu.