Pobierz prezentację
OpublikowałKornelia Sienicki Został zmieniony 11 lat temu
1
Algorytmy i algorytmika Opracowanie: Teresa Szczygieł
2
ALGORYTMY I ALGORYTMIKA
Najważniejsze pojęcia Historia algorytmów Co należy koniecznie wiedzieć? Sposoby przedstawiania algorytmów Sprawdź się! Algorytmy
3
Poznajmy najważniejsze pojęcia...
Mimo, że słowo „algorytm” brzmi trochę obco, to jednak okazuje się, że pod nim kryje się nasz dobry znajomy! Definicja mówi: Algorytm jest to precyzyjny opis sposobu rozwiązania określonego zadania lub osiągnięcia jakiegoś celu. Rozumiem! Algorytmy
4
Poznajmy najważniejsze pojęcia...
A l g o r y t m i k a jest działem informatyki zajmującym się poszukiwaniem, konstruowaniem i badaniem własności algorytmów w kontekście ich przydatności do rozwiązywania problemów za pomocą komputerów. Trzeba to przemyśleć! Algorytmy
5
Kilka słów o historii algorytmów
Pojęcie algorytm pochodzi od brzmienia fragmentu nazwiska arabskiego matematyka Muhammada ibn Musa al.- Chorezmiego, uznawanego za prekursora obliczeniowych metod w matematyce. Żył na przełomie VIII i IX wieku i to on upowszechnił system dziesiętny i stosowanie zera jako symbolu oznaczającego „nic”. Algorytmy
6
Kilka słów o historii algorytmów
W historii informatyki można spotkać wiele śladów poszukiwania sposobów rozwiązywania problemów nazywanych algorytmami. To głównie matematycy dążyli do wynalezienia maszyny, która wykonywałaby czasochłonne i żmudne obliczenia. Najstarsze odnalezione przyrządy do liczenia tzw. abakusy pochodzą z X w. p.n.e. Później powstały liczydła, jedno z takich liczydeł, używanych do dziś w Japonii, to soroban widoczny obok na zdjęciu. Algorytmy
7
Kilka słów o historii algorytmów
Jednym z najstarszych i najbardziej znanych algorytmów jest algorytm Euklidesa, który podany został już 2500 lat temu. Algorytm ten służy do obliczania największego dzielnika dwóch liczb (ale nie ma nic wspólnego z rozkładem liczb na czynniki pierwsze) i należy obecnie do kanonu wiedzy informatycznej. Wydaje się, że każdy informatyk powinien znać zasadę działania tego algorytmu. Algorytmy
8
Co należy koniecznie wiedzieć?
Z algorytmami w szkole po raz pierwszy spotykasz się na lekcjach matematyki, kiedy stosujesz pewien sposób rozwiązania zadania np. algorytm pisemnego mnożenia dwóch dowolnych liczb. Czy potrafisz sformułować przepis na obliczenie iloczynu dwóch liczb sposobem pisemnym? Algorytm jest pojęciem ściśle związanym z informatyką, a każdy program komputerowy jest zapisem pewnego algorytmu (wyrażonym w określonym języku programowania). Algorytmy
9
Co należy koniecznie wiedzieć?
Wykonawcą algorytmu może być komputer lub człowiek. Każdy problem, który ma być rozwiązany musi zostać najpierw poddany s p e c y f i k a c j i, która polega na dokładnym opisie zadania. W ramach specyfikacji problemu podaje się: d a n e dla rozwiązywanego problemu w a r u n k i, jakie te dane muszą spełniać w y n i k i z w a r u n k a m i, jakie muszą one spełniać z w i ą z e k w y n i k ó w z d a n y m i Algorytmy
10
RODZAJE ALGORYTMÓW Algorytm sekwencyjny inaczej liniowy instrukcje wykonywane są w porządku, w jakim zostały wprowadzone Algorytm rozgałęziony występują w tym algorytmie instrukcje warunkowe Algorytm iteracyjny wielokrotnie wykonuje się pewne instrukcje, dopóki nie zostanie spełniony określony warunek (algorytm z „pętlą”) Algorytm rekurencyjny algorytm wywołujący sam siebie Algorytmy
11
Sposoby przedstawiania algorytmów
Opis słowny Lista kroków Schemat blokowy Zapis z wykorzystaniem jednego z języków programowania Algorytmy
12
Opis słowny algorytmu Często w codziennym życiu masz do czynienia
z sytuacją, w której przekazujesz komuś przepis na wykonanie jakiegoś zadania czy dojścia do określonego celu. Jeżeli jest to przepis, który precyzyjnie określa kolejne czynności i w jednoznaczny sposób pozwala dojść do celu, to właśnie posługujesz się opisem słownym algorytmu. Algorytmy
13
Algorytm w postaci listy kroków
1. Podejdź do telefonu 2. Podnieś słuchawkę 3. Sprawdź, czy jest sygnał... Zapewne domyślasz się – jest to początek algorytmu wykonania telefonu podany w postaci listy kroków Zobacz też algorytm Euklidesa Pamiętaj by w jednym punkcie (kroku) opisać t y l k o j e d n ą o p e r a c j ę Algorytmy
14
Algorytm w postaci schematu blokowego
Schemat blokowy jest graficzną reprezentacją słownego zapisu algorytmu Elementy, z których buduje się schematy blokowe poznasz przeglądając kolejne slajdy Muszę je koniecznie obejrzeć Algorytmy
15
Schemat blokowy Skrzynki graniczne START i STOP START
mają kształt owalu - wskazują początek i koniec wykonywania schematu blokowego. START STOP Algorytmy
16
Schemat blokowy S:= a + b
Skrzynka operacyjna (instrukcji) ma kształt prostokąta, w którym umieszcza się instrukcje. S:= a + b Algorytmy
17
Schemat blokowy S > 10 Skrzynka warunku Tak Nie
(decyzyjna) jest rombem, w którym umieszcza się warunek decydujący o dalszej kolejności wykonywania operacji. Ze skrzynki wychodzą dwa połączenia: jedno oznaczone „Tak”, drugie oznaczone „Nie”. S > 10 Tak Nie Algorytmy
18
Schemat blokowy Skrzynka WE/WY (wejścia/wyjścia)
jest równoległobokiem, w którym umieszcza się dane lub wyniki. Wprowadź (a) Algorytmy
19
Algorytm przedstawiony w języku programowania
Aby przedstawić algorytm w postaci programu (czyli zapisany w języku programowania) trzeba go zbudować z ciągu instrukcji określonego języka programowania. Tyle tych języków... Który wybrać? Może Pascal, albo C++ lub Logo... Algorytmy
20
Sprawdź się! W zadaniach umieszczonych na kolejnych
slajdach należy wskazywać elementy, które powinny być kolejno dołączane do schematu blokowego. Muszę się zastanowić! Algorytmy
21
Obliczanie sumy dwóch liczb
START Pisz sumę Podaj (a) STOP Podaj (b) S=: a + b Algorytmy
22
Niestety źle! Algorytmy
23
Obliczanie sumy dwóch liczb
START Podaj (a) STOP S=: a + b Pisz sumę Podaj (b) Algorytmy
24
Niestety źle! Algorytmy
25
Obliczanie sumy dwóch liczb
START Podaj (a) Podaj (b) Pisz sumę S=: a + b STOP Algorytmy
26
Niestety źle! Algorytmy
27
Obliczanie sumy dwóch liczb
START Podaj (a) Podaj (b) S=: a + b Pisz sumę STOP Algorytmy
28
Niestety źle! Algorytmy
29
Obliczanie sumy dwóch liczb
START Podaj (a) Podaj (b) S=: a + b Pisz sumę STOP Algorytmy
30
Obliczanie sumy dwóch liczb
START Podaj (a) Znakomicie! Podaj (b) S=: a + b Pisz sumę STOP Algorytmy
31
Pomysł Euklidesa na obliczanie NWD
1. Dane są dwie niezerowe liczby naturalne a i b. 2. Dopóki liczby nie są równe powtarzaj krok 3, w przeciwnym razie przejdź do kroku 4. 3. Od większej liczby odejmij mniejszą i tę większą zastąp otrzymaną różnicą. 4. Wyprowadź wynik: NWD (największy wspólny dzielnik) jest równy pierwszej liczbie. Wiem, że to jest lista kroków Powrót do listy kroków Powrót do historii Algorytmy
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.