algorytmika
Od problemu do programu algorytm program
Zależność między programem a algorytmem komputer komputerowy Program algorytm
Definicje Algorytm to uporządkowany i uściślony sposób rozwiązywania problemu, zawierający szczegółowy opis wykonywanych czynności Program komputerowy to logicznie uporządkowany ciąg instrukcji języka programowania, realizujący algorytm Specyfikacja zadania – szczegółowy opis zadania, w którym wymieniane są dane wejściowe i wyniki oraz warunki jakie muszą spełniać, określa się więc związek między danymi a wynikami
Definicje Algorytmy, które wykonują działania matematyczne na danych liczbowych, nazywamy algorytmami numerycznymi. Algorytmika, to dział informatyki zajmujący się różnymi aspektami tworzenia i analizowania algorytmów
Etapy konstruowania algorytmu: sformułowanie zadania – ustalamy jaki problem ma rozwiązać algorytm; określenie danych wejściowych, ich typu; określenie wyniku i sposobu jego prezentacji; ustalenie metody wykonania zadania; zapisanie algorytmu za pomocą wybranej metody; analiza poprawności rozwiązania; testowanie rozwiązania dla różnych danych; ocena skuteczności algorytmu;
Cechy dobrego algorytmu Poprawność- algorytm powinien zwracać prawidłowe wyniki dla każdego zestawu poprawnych danych. Skończoność- rozwiązanie zadania musi być możliwe dla dowolnego zestawu danych w skończonej liczbie kroków. Jednoznaczność- algorytm powinien zwracać te same wyniki dla zestawu takich samych danych wejściowych. Sprawność- szybkość działania i optymalne wykorzystanie zasobów komputera
Sposoby zapisu, prezentacji algorytmów wypowiedź ustna lista kroków pseudojęzyk (pseudokod) schemat blokowy drzewo algorytmu prezentacja w programach użytkowych zapis w języku programowania
Specyfikacja zadania Problem: oblicz średnia arytmetyczna trzech dowolnych liczb rzeczywistych. Dane: trzy dowolne liczby rzeczywiste A, B, C Wynik: wartość średniej arytmetycznej liczb A, B, C, równa SR
Algorytm w postaci listy kroków - oblicza średnią arytmetyczną trzech dowolnych liczb rzeczywistych Dane: dowolne liczby rzeczywiste A, B, C Wynik: wartość średniej arytmetycznej liczb A, B, C równa SR Zacznij algorytm Wprowadź wartość trzech liczb A, B, C Zmiennej S przypisz wartość wyrażenia a+b+c -> S:=A+B+C Zmiennej SR przypisz wartość wyrażenia s/3 -> SR:=S/3 Wyprowadź wynik: SR Zakończ algorytm
Graficzna prezentacja algorytmu - schemat blokowy
Graficzna prezentacja algorytmu - schemat blokowy
Zasady przedstawiania algorytmów w postaci schematu blokowego Ogólne zasady budowania schematów blokowych nie zależą od kształtu tworzących je bloków ani od narzędzi stosowanych do ich konstrukcji. Operacje algorytmu należy umieszczać w odpowiednich blokach. Każdy schemat blokowy ma jeden blok startowy, natomiast bloków zakończenia algorytmu może być kilka. Wszystkie bloki muszą być ze sobą połączone (nie może być „przerw" w schemacie). Każde połączenie jest zaczepione do danego bloku i dochodzi do następnego bloku lub innego połączenia. Kolejność wykonywania operacji wyznaczają połączenia między blokami. Do każdego bloku wchodzi jedno połączenie (oprócz bloku początku) i jedno wychodzi (oprócz bloku warunku, z którego wychodzą dwa połączenia, oraz bloku zakończenia algorytmu, z którego nie wychodzi już żadne połączenie).
Algorytm obliczania średniej arytmetycznej trzech dowolnych liczb rzeczywistych.
Przykład algorytmu liniowego
Algorytm liniowy, algorytm z warunkami Algorytm liniowy realizuje jeden ciąg działań, czynności wykonywane są po kolei W algorytmie z warunkami może wystąpić kilka alternatywnych ciągów działań. Wybór jednego z nich zależy od spełnienia (lub niespełnienia) warunku