Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

1.Przykłady prostych algorytmów opisujących codzienne czynności

Podobne prezentacje


Prezentacja na temat: "1.Przykłady prostych algorytmów opisujących codzienne czynności"— Zapis prezentacji:

1 1.Przykłady prostych algorytmów opisujących codzienne czynności

2 Co to jest algorytm ? Na lekcjach matematyki czy fizyki często słyszymy zdanie "rozwiąż zadanie. Większość ich rozwiązujemy według pewnych schematów. Najpierw wypisujemy dane i zastanawiamy się do jakiego celu dążymy, a więc jaki ma być wynik. Następnie wypisujemy wzory łączące dane z szukanymi bądź twierdzenia, które można zastosować. Przed koniecznością rozwiązywania zadań stajemy również poza szkołą. Robimy to w każdej innej dziedzinie naszego życia, na przykład: telefonując do koleżanki i zapraszając ją na ciasto gotując jajko na twardo kupując piłkę w sklepie znajdując najniższego ucznia w klasie pisząc wypracowanie Również przy takim typie zadań musimy określić dane i warunki, które muszą one spełniać. formułujemy także wynik, który pragniemy uzyskać. Algorytm to przepis rozwiązania zadania, zawierający opis danych wraz z opisem czynności, które należy wykonać z tymi danymi, aby osiągnąć zamierzony cel.

3 Etapy rozwiązywania problemów W procesie rozwiązywania każdego zadania możemy wyróżnić pewne etapy, które nas do niego prowadzą. Etapy rozwiązywania problemów: 1.     Sformułowanie zadania 2.     Określenie danych wejściowych 3.     Określenie celu, czyli wyniku 4.     Poszukiwanie metody rozwiązania, czyli algorytmu 5.     Przedstawienie algorytmu w postaci: o       opisu słownego o       listy kroków o       schematu blokowego o       języka programowania 6.     Analiza poprawności rozwiązania 7.     Testowanie rozwiązania dla różnych danych. Ocena efektywności przyjętej metody.

4 Budowa algorytmów Algorytmy powinny być tak przedstawiane, aby było możliwe ich jednoznaczne odczytanie i zastosowanie. Niektóre algorytmy można opisać w języku potocznym, zwłaszcza wtedy, gdy jego wykonawcą ma być człowiek (w informatyce zajmujemy się opracowywaniem algorytmów, których wykonanie powierzamy komputerom). Z czego składa się algorytm? Zawiera on opis danych, opis wyników oraz plan działania, czyli przetworzenia danych. Plan ten można przedstawić w postaci ciągu czynności, które muszą być wykonane w określonej kolejności. Opis czynności występujących w algorytmie nazywamy instrukcjami

5 Ćwiczenie 1 Opracuj algorytm gotowania jaja na miękko
Ćwiczenie 1 Opracuj algorytm gotowania jaja na miękko. Zastanów się jak ugotować jajko na miękko. Na początku opracowywania algorytmu przyjmijmy założenie, że używamy kuchenki gazowej, posiadamy garnek i wodę. Oczywiście niezbędne jest też samo jajko. Zakładamy również, że nic nie utrudni samej czynności, to znaczy np. w trakcie gotowania nie zostaniemy pozbawieni dopływu gazu, czy też osoba nie wie co to garnek. Algorytm ten ma postać: 1.     Wlać do garnka zimną wodę. 2.     Zapalić gaz. 3.     Gotować wodę do wrzenia. 4.     Włożyć jajko. 5.     Odczekać trzy minuty. 6.     Zgasić gaz. 7.     Wyjąć jajko Ma on prostą postać. Składa się z ciągu instrukcji, które są wykonywane jedna po drugiej w kolejności, jaka wynika z ich następstwa w zapisie algorytmu. Taki algorytm nosi nazwę algorytmu liniowego (sekwencyjnego).

6 Ćwiczenie 2 Opracuj algorytm telefonicznego zaproszenia koleżanki na ciasto. Numer telefonu : Wiesz już jak wyglądał poprzedni algorytm oraz co to jest algorytm liniowy. W tym przypadku zrobimy założenie, że nic nie utrudni połączenia (a więc już za pierwszym razem zostaniemy połączeni z wybraną osobą), a wykonawca czynności zna cyfry i wie jak wybiera się je z tarczy telefonu. Oto jak wygląda algorytm (wersja 1): 1.     Podnieś słuchawkę. 2.     Wybierz cyfrę      Wybierz cyfrę      Wybierz cyfrę      Wybierz cyfrę      Wybierz cyfrę      Wybierz cyfrę      Wybierz cyfrę      Przekaż informacje Odłóż słuchawkę. Algorytmy liniowe mają opisy składające się z kroków, które nie zależą od żadnych warunków i są wykonywane w zapisanej kolejności. Istnieją jednak sytuacje, w których dalsze postępowanie w algorytmie zależy od spełnienia, bądź nie, określonych warunków. Czasami musimy powtórzyć pewne kroki algorytmu kilka razy.

7 2. Język i środowisko Logo Komeniusz Podstawowe polecenia

8 LOGO Język Logo został opracowany przez grupę uczonych pod kierownictwem Seymoura Paperta w Laboratorium Sztucznej Inteligencji MIT (Massachusetts Institute of Technology) w latach siedemdziesiątych. Logo jest dialektem języka LISP a w pracach nad nim wykorzystano wyniki badań szwajcarskiego pedagoga i psychologa, profesora Jeana Piageta.          Logo jest przede wszystkim językiem edukacyjnym, językiem pierwszego kontaktu człowieka z programowaniem komputera. Jest także językiem wysokiego poziomu, umożliwiającym rozwiązywanie poważnych problemów z informatyki, matematyki i innych dziedzin. Logo jest językiem wyjątkowo łatwym i przyjemnym w obsłudze, który ponadto wyrabia dobre nawyki oraz uczy zasad poprawnego, strukturalnego programowania.          Powstało wiele systemów programowania Logo. Między innymi polskie AC-Logo dla IBM PC, na którym testowane były wszystkie umieszczone na tej stronie procedury. Ostatnio popularniejsze jest Logo dla Windows - Komeniusz, który jest środowiskiem dydaktycznym wykorzystującym możliwości i zalety interfejsu graficznego. Twórcami Komeniusza są: Ivan Kalaš , Andrej Blaho i Peter Tomcsányi.

9 Uruchomienie LOGO KOMENIUSZ W oknie Menedżera programów, znajdziemy ikonę: By otworzyć Logo, kliknij dwukrotnie w tę ikonę lub kliknij raz i naciśnij Enter. Po chwili na ekranie otworzy się Główne okno Logo Komeniusz.    

10   By zakończyć pracę w Logo, należy kliknąć dwukrotnie w przycisk sterowania okna lub wybrać polecenie Koniec z menu Plik (Alt, F,X) lub napisać na Ekranie tekstowym polecenie pierwotne Logo DOSĆ. Wtedy otworzy się dialog: Koniec pracy? Czy zapisać wynik pracy? Możemy wybrać Tak, Nie lub Anuluj i zapisać wynik pracy, skończyć pracę bez zapisywania jej wyniku lub kontynuować pracę w Logo dalej

11 Jak wiadomo w logo mamy możliwość sterowania tzw. żółwiem
Jak wiadomo w logo mamy możliwość sterowania tzw. żółwiem.         W wersji AC-Logo "żółw" faktycznie oznaczony jest rysunkiem tego zwierzaka. W Komeniuszu jest to domyślnie trójkącik ale jest możliwość zmiany postaci.       Odległości na ekranie żółwia mierzymy w krokach. W przypadku AC-Logo szerokość ekranu to 600 kroków, a wysokość 300. Początek układu współrzędnych jest położony w środku ekranu.       

12 Ważniejsze polecenia Logo:       pw     - w prawo o podaną po odstępie liczbę stopni. Np. pw 90 - obrót żółwia o 90 stopni w prawo (obrót w miejscu)       lw      - w lewo z uwagami jak wyżej       np     - naprzód o podaną po odstępie liczbę kroków       ws    - wstecz o podaną po odstępie liczbę kroków       podane powyżej polecenia dla ruchów żółwia są względne; tzn. położenie żółwia po wykonaniu polecenia zależy od początkowego położenia żółwia (przed wykonaniem)      ponadto mamy polecenia bezwzględne:      poz [ x y ]  - ustawienie żółwia na pozycji x y tzn. w miejscu o współrzędnych x,y. Zamiast x i y wpisujemy liczby oznaczające współrzędne pamiętając o rozmiarach ekranu     pozx      - ustawienie żółwia na współrzędnej x podanej po odstępie bez zmiany położenia żółwia w pionie      pozy      - j.w. ale zmiana położenia w pionie bez zmiany położenia w poziomie     kąt       - ustawienie żółwia pod kątem danym (po odstępie) względem pionu bez zmiany jego położenia    Ponadto mogą nam się przydać następujące polecenia:     cs   - czyszczenie ekranu, bez parametrów. Czyści ekran i ustawia żółwia na poz 0,0     pż    - pokaż zółwia (jeśli był schowany)     sż    -  schowaj żółwia     ścier - bez parametrów. Przejście do trybu ścierania: od tej pory linia po której idziemy będzie ścierana, przy przejściu po pustym terenie - brak efektów. Wyłączenie trybu - opu.     opu  - opuść pisak - od tej chwili żółw zostawia za sobą ślad (jeśli tego już nie robił)     pod  - podnieś pisak - żółw przestanie zostawiać za sobą ślad

13 Postać ogólna procedury w języku logo (w wersji polskiej): OTO nazwa_procedury :parametr ;treść procedury JUŻ Elementy pisane czcionką pogrubioną są obowiązkowe.  Przykład: Załóżmy, że chcemy narysować kwadrat o boku 100 kroków na ekranie. Ciąg poleceń wpisywanych w trybie bezpośrednim mógłby przedstawiać się następująco:    np 100 (idę najpierw naprzód o 100 kroków)   pw 90 (obracam się w prawo o 90 stopni)   np 100   pw 90   np 100   pw 90   np 100   pw 90 (ostatni obrót w prawo aby ustawić się w takiej pozycji jak przed rozpoczęciem rysowania)

14 Mamy narysowany kwadrat
Mamy narysowany kwadrat. Ale jeśli chcemy drugi, znowu musimy wklepać 8 poleceń! Jeśli zdefiniujemy procedurę kwadrat od tej pory żółw "będzie wiedział co to jest kwadrat". Wtedy aby kwadrat pojawił się na ekranie wystarczy wpisać po znaku zapytania nazwę procedury (czyli kwadrat).     Wobec tego zdefiniujemy procedurę kwadrat. W przypadku Komeniusza trzeba kliknąć na odpowiednią ikonkę. W Komeniuszu ponadto każda procedura ma własne okienko.     oto kwadrat         np 100 pw 90 np 100 pw 90 np 100 pw 90 np 100 pw 90     już    A teraz pierwsze drobne usprawnienie: aby nie pisać wielokrotnie tego samego tekstu (w naszym przypadku np 100 pw 90) możemy użyć instrukcji złożonej powtórz.     Ogólna postać instrukcji:    POWTÓRZ ile_razy [ instrukcje do powtarzania  ]    Zamiast "ile_razy" wpisujemy konkretną liczbę lub zmienną. Teraz nasz kwadrat o boku 100 będzie narysowany za pomocą procedury o treści:    oto kwadrat        powtórz 4 [ np 100 pw 90 ]    już    Został jeszcze jeden drobny problem - mamy kwadrat ale tylko o boku 100. A co będzie jeśli chcemy kwadrat o boku 50? I tu widać rolę parametrów procedury. Niech teraz nasza procedura ma postać:    oto kwadrat :a       powtórz 4 [ np :a  pw 90 ]    już

15 Łączenie kilku procedur w jedną. Np
Łączenie kilku procedur w jedną. Np. rysująca serwetkę: oto ser powtórz 9 [powtórz 360 [np 1,5 pw 1] np 20 pw 40] już

16 PROCEDURY RYSUJĄCE PROSTOKĄT   oto prostokąt :a :b      powtórz 2 [np :a pw 90 np :b pw 90]   już wywołanie: np.  prostokąt TRÓJKĄT RÓWNOBOCZNY   oto trójkąt :a     powtórz 3 [np :a pw 120]   już N-KĄT FOREMNY   oto wielokąt :a :n    powtórz :n [np :a pw 360 / :n ]   już

17 ROZETA ZŁOŻONA Z WIELOKĄTÓW   oto rozeta :a :n :m    powtórz :m [ wielokąt :a :n  pw 360 / :m ]   już przykładowy efekt przy wywołaniu rozeta :  

18 PŁOTEK  Tu dla większej przejrzystości zdefiniujemy dwie procedury:    oto sztacheta :a :b      np :a pw 30 np :b pw 120 np :b pw 30 np :a pw 90 np :b pw 90    już   oto płotek :a :b :n    powtórz :n - 1 [sztacheta :a :b pw 90 np :b lw 90 np :a / 2                         prostokąt :a / 4 :b pw 90 np :b lw 90 ws :a / 2 ]   sztacheta :a :b   już


Pobierz ppt "1.Przykłady prostych algorytmów opisujących codzienne czynności"

Podobne prezentacje


Reklamy Google