Treści multimedialne kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka + 1 TYTUŁ: Algorytmika – rozwiązywanie problemów, proces przetwarzania informacji AUTOR: Grzegorz Witkowski, Milena Gryglas 2 Wprowadzenie Algorytm jest to precyzyjny opis sposobu rozwiązania określonego zadania lub osiągnięcia jakiegoś celu! • Algorytm w matematyce oraz informatyce to skończony, uporządkowany zbiór jasno zdefiniowanych czynności, koniecznych do wykonania pewnego zadania, w ograniczonej liczbie kroków. Słowo "algorytm" pochodzi z nazwiska Muhammed ibn Musa Alchwarizmi ( أبو عبد هللا محمد )بن موسى الخوارزميmatematyka perskiego z IX wieku i początkowo oznaczało w Europie sposób obliczeń oparty na dziesiętnym systemie liczbowym. • Algorytm ma przeprowadzić system z pewnego stanu początkowego do pożądanego stanu końcowego. Badaniem algorytmów zajmuje się algorytmika. 3 Notacja algorytmów Sposoby notacji algorytmów: • Słowny na ogół mało dokładny. • Lista kroków. • Schemat blokowy. Opis słowny Pierwszy i najprostszy to opis słowny, np. po lekcjach pójdę do kiosku i kupię gazetę. Innymi przykładami mogą być: podyktowanie przez telefon przepisu na zaparzenie herbaty czy wyjaśnianie koledze, jak należy rozwiązać zadanie z matematyki. Przykładów takich zachowań, kiedy widzimy, że występuje jakaś kolejność przewidywalnych działań, można podawać bardzo wiele. To są przykłady opisów algorytmicznych. 4 Notacja algorytmów Przykładowa lista kroków: 1. Przeczytaj definicję. 2 Czy umiesz ją na pamięć? a) jeśli tak, przejdź do kroku 3 b) jeśli nie, przejdź do kroku 1. 3. Gratulacje, nauczyłeś się definicji na pamięć. Schemat blokowy. Aby zapisać algorytm za pomocą takiego schematu, trzeba poznać stosowane symbole i ich znaczenie. Będziemy używać tzw. bloków - graficznego sposobu przedstawienia czynności wykonywanych przez komputer. Bloki te łączone są za pomocą strzałek. W ten sposób pokazujemy kolejność wykonywania akcji. 5 Notacja algorytmów Bloki START i STOP Bloki START i STOP wskazują początek i koniec każdego algorytmu. Z bloku START wychodzi tylko jedna droga, do bloku STOP wchodzi co najmniej jedno połączenie. 6 Notacja algorytmów Blok operacyjny W bloku operacyjnym umieszcza się polecenia do wykonania (instrukcje) podstawienie, obliczenie, wprowadzenie wartości. 7 Notacja algorytmów Blok warunkowy W bloku warunkowym umieszcza się warunek, który decyduje o wyborze dalszej drogi postępowania. Z bloku wychodzą dwa połączenia: TAK (wybierane, gdy warunek jest spełniony), NIE (gdy warunek nie jest spełniony). 8 Notacja algorytmów Blok wejścia/wyjścia W bluku wejścia/wyjścia umieszcza się wprowadzane dane lub wyprowadzane wyniki. Ze skrzynki wychodzi tylko jedno połączenie. 9 Przykładowy algorytm W algorytmie tym wykorzystujemy blok warunkowy, ponieważ mamy do czynienia z sytuacją, gdy tok dalszego postępowania zależy od dokonanego wyboru (dokładnie: zależy od pogody). 10 Przykładowy algorytm Algorytm dodawania dwóch liczb zapisany w postaci listy kroków. Dane: Liczby x i y Lista kroków: 1. Początek algorytmu 2. Wprowadź liczby x i y 3. Oblicz wartość suma:=x+y 4. Wypisz wartość suma 5. Koniec algorytmu Przykładowy algorytm Start Wprowadź (x, y) suma:=x+y Wypisz suma STOP Algorytm dodawania dwóch liczb zapisany w postaci schematu blokowego Przykładowy algorytm Opis w postaci listy kroków na przykładzie algorytmu wyszukującego największą z czterech liczb 13 Przykładowy algorytm Ten sam algorytm w postaci schematu blokowego 14