Obrazy rekurencyjne. Zastosowanie rekurencji w algorytmice. AUTOR: Martin Śniegoń

Wielkość: px
Rozpocząć pokaz od strony:

Download "Obrazy rekurencyjne. Zastosowanie rekurencji w algorytmice. AUTOR: Martin Śniegoń"

Transkrypt

1 Obrazy rekurencyjne Zastosowanie rekurencji w algorytmice AUTOR: Martin Śniegoń

2 Zdolność procedury/funkcji do wywoływania samej siebie Podstawowa i jedna z najważniejszych technik programistycznych Umożliwia rozkładanie problemów większych na mniejsze, w analogiczny sposób Jasno określone warunki zakończenia funkcji rekurencyjnej Dlaczego rekurencja?

3 Krótszy i bardziej przejrzysty zapis kodu źródłowego na wszystkich etapach rozwoju aplikacji Ułatwione dowodzenie poprawności algorytmu, a także obliczanie złożoności Zminimalizowane ryzyko popełnienia błędu podczas konstruowania algorytmu Zalety rekurencji

4 Ryzyko braku optymalnego rozwiązania problemu algorytmicznego (np. niewłaściwie zastosowana rekurencja znacząco podnosi złożoność algorytmu) Błędy programistyczne podczas określania warunków zakończenia rekurencji Brak wsparcia sprzętowego w typowych językach programistycznych (wyjątkiem są języki funkcyjne typu Haskell, F#) Czy rekurencja ma wady?

5 Zasada zastępowania rekurencji iteracją, gdzie tylko jest to możliwe Wielokrotne wywołanie, a kwestia przepełnienia stosu Brak obliczeń częściowych (problem przechowywania danych) Zmiana środowiska programistycznego celem poprawy wydajności Rozwiązywanie problemów związanych z rekursją

6 Względnie prosty schemat generowania grafiki, a także mniejszy rozmiar obrazu Możliwość ustalenia za pomocą dodatkowej zmiennej dokładności wyświetlanej ilustracji (im większa liczba wywołań funkcji rekurencyjnej, tym dokładniejszy obraz) Łatwe wykrywanie kolizji, a także punktów należących do obrazu Zalety obrazów rekurencyjnych

7 Uzyskiwanie nietypowych, realnych kształtów, figur czy obiektów Niejednolite elementy graficzne Tylko samopodobne, powtarzające się fragmenty Problemy z projektowaniem algorytmów tworzących skomplikowane ilustracje Ograniczenia obrazów tworzonych rekurencyjnie

8 Definicja (brak ścisłego określenia) Zbiór minimum kilku następujących cech: Nietrywialna struktura w dowolnej skali Względnie prosta reguła powstawania (rek.) Samopodobieństwo (niekoniecznie dokładne) Wymiar Hausdorfa > wymiar topograficzny Naturalny wygląd (często poszarpany) Struktura trudna do opisania w geometrii euklidesowej Czym jest fraktal?

9 Atraktory IFS (iterated function system), czyli fraktale generowane za pomocą odpowiednich funkcji rekurencyjnychiterowanych (możliwość określenia ilości kroków do wykonania) Zbiory i funkcje określone na liczbach zespolonych (typowe przykłady to zbiór Julii i Mandelbrota) Powstawanie fraktali

10 Przykładowe fraktale (mat.)

11 Przykładowe fraktale (grafika)

12 Przykładowe fraktale (świat)

13 Konstrukcja W kroku pierwszym ustalamy wymiary (współrzędne wierzchołków trójkąta równobocznego) figury Następnie wyliczamy środki wszystkich boków Trójkąt zbudowany na środkach tych boków kolorujemy na ustaloną barwę Dla pozostałych trzech trójkątów wywołujemy funkcje rekurencyjne Dodatkowa zmienna przekazywana jako parametr określa ilość kroków rekurencji Trójkąt Sierpińskiego

14 Uszczelka Sierpińskiego (ilustracja)

15 Konstrukcja W pierwszym kroku określamy kwadrat i jego wierzchołki za pomocą współrzędnych Kolejno każdy bok dzielimy na 3 równe części, w taki sposób, że środkowy kwadrat jest kolorowany Dla pozostałych 8 kwadratów wywołujemy rekurencyjnie tę samą funkcję podziału i kolorowania W implementacji musimy pamiętać o określeniu liczby wywołań rekursji (często warunki brzegowe są określane wg widoczności obrazu i dopasowywane do rozdzielczości) Dywan Sierpińskiego

16 Dywan Sierpińskiego

17 WZÓR (wymiar fraktalny): Uproszczony model n * s r = 1, gdzie n oznacza liczbę wywołań rekurencyjnych (liczba atraktorów obrazu głównego), s oznacza skalę podobieństwa kolejnego atraktora w stosunku do poprzednika, a r jest szukanym wymiarem Udowodnić można, że wymiar fraktalny dywanu Sierpińskiego wynosi ok. 1,8928 Pole dywanu (a także innych prostych figur, w których wycinane są pewne elementy w sposób regularny) wynosi 0 Dywan Sierpińskiego (obliczenia)

18 Ciekawostkę stanowi również odmienna strategia generowania figur rekurencyjnych, tzw. gra w chaos Polega ona na losowym wybieraniu odpowiednich punktów i łączeniu ich w taki sposób, aby powstał fraktal Trójkąt Sierpińskiego można otrzymać w ten sposób, a początkowe punkty są losowane zamiast definiowane (trójkąt nie musi być równoboczny) Gra w chaos

19 Kluczowym elementem płatku Kocha jest połączenie trzech odcinków (w kolejnych krokach krzywych) w trójkąt równoboczny, który stanowi podstawę płatka (im więcej kroków tym bardziej przypomina płatek śniegu) Każdy krok oznacza zmniejszenie pojedynczego odcinka w skali 1/3 w stosunku do poprzedniego kroku Krzywa i płatek Kocha

20 Krzywa Kocha

21 Chcąc wykonać krzywą Kocha należy zadbać o wykonanie odpowiedniej sekwencji wywołań rekurencyjnych Rysowanie odbywa się w najniższej wywołanej funkcji rekurencyjnej Obroty są wykonywane w każdym wywołaniu rekursywnym Alternatywny sposób generowania płatku Kocha za pomocą trójkątów równobocznych nie stanowi optymalnego rozwiązania Krzywa Kocha - generowanie

22 Kolejne kroki tworzenia krzywej Sierpińskiego Warto zwrócić uwagę na powtarzający się schemat: -Krzywa tworzy zamknięty zbiór punktów na płaszczyźnie - Domknięcia występują zawsze w tych samych miejscach (narożniki: góra po prawej, dół po prawej, dół po lewej, góra po lewej) - Rysowanie odbywa się wg kolejności narożników, które rysowane są tylko w głównym wywołaniu procedury Krzywa Sierpińskiego

23 Warto zwrócić uwagę na 4 kawałki powtarzające się podczas rysowania: Oznaczmy jako A Oznaczmy jako C Oznaczmy jako B Oznaczmy jako D Krzywa Sierpińskiego

24 Figura: An Bn Cn Dn Powyższe strzałki oznaczają domknięcia Elementy An, Bn, Cn i Dn oznaczają odpowiednio fragmenty rysunku wykonane z dokładnością do n kroków: górnej, prawej, dolnej i lewej części Należy zdefiniować rekurencyjnie An, Bn, Cn i Dn, aby krzywa mogła powstać Krzywa Sierpińskiego (algorytm)

25 An = An-1 Bn-1 Dn-1 An-1 Bn = Bn-1 Cn-1 An-1 Bn-1 Cn = Cn-1 Dn-1 Bn-1 Cn-1 Dn = Dn-1 An-1 Cn-1 Dn-1 Zauważyć należy, iż długość odcinków, z których składa się krzywa określamy na początku lub uzależniamy od liczby kroków rekurencji Rysowanie zaczyna się od górnej lewej strony, a nie od środka! Krzywa Sierpińskiego (def. rek.)

26 Krzywa Hilberta

27 Krzywa składa się z 4 fragmentów (niedomkniętych kwadratów, odpowiednio obróconych względem pustego boku) Aby otrzymać kolejny krok rekurencyjny należy skleić powyższe 4 fragmenty w 3 miejscach (łączenie następuje zawsze po lewej stronie, u góry i po prawej) Ciekawostkę stanowi fakt, że krzywa Hilberta wypełnia całą powierzchnię po n- krokach Krzywa Hilberta (budowa)

28 Krzywa Hilberta (obserwacje)

29 Krzywa Hilberta (schemat)

30 Zgodnie z ustalonym porządkiem łączenia (można wybrać inną kolejność i zmodyfikować nieznacznie algorytm): Zaczynamy rysowanie figury Cn, po którym następuje łączenie w górę z kolejnym elementem krzywej Bn, po którym następuje łączenie w prawo Bn, po którym następuje łączenie w dół An, które kończy rysowanie W kolejnych krokach rekurencyjnych dochodzi element Dn (wstawiany w odpowiednie miejsce, schemat powstał w oparciu 3 kroki r.) Krzywa Hilberta (rysowanie)

31 Program KrzyweHilberta () Const n = 5; h = 100; Var i, h, x, y, x0, y0; procedure A(i) if i>0 then begin D(i-1); x:=x - h; A(i-1); y:=y - h; A(i-1); x:=x + h; B(i-1); end procedure B(i) if i>0 then begin C(i-1); y:=y + h; B(i-1); x:=x + h; B(i-1); y:=y h; A(i-1); end procedure C(i) if i>0 then begin B(i-1); x:=x + h; C(i-1); y:=y + h; C(i-1); x:=x h; D(i-1); end procedure D(i) if i>0 then begin A(i-1); y:=y - h; D(i-1); x:=x - h; D(i-1); y:=y + h; C(i-1); end begin i := 0; h:= h0; x0 := h/2; y0 := x0; repeat i := i + 1; h := h/2; x0 := x0 - h/2; y0 := y0 - h/2; x := x0; y := y0; UstawPioro(x,y); B(i); until i = n; end Krzywa Hilberta (kod źródłowy)

32 W kodzie źródłowym rysujemy n- początkowych krzywych Hilberta Poza zaprogramowaniem wywołań rekurencyjnych, należy zwrócić uwagę na początek rysowania (ustawienie kursora w początkowym położeniu, aby w trakcie rysowania nie wyjść poza ustalony obszar) Funkcja UstawPioro rozpoczyna rysowanie, a pisak porusza się zgodnie z wytycznymi w poszczególnych procedurach po osi X i Y Krzywa Hilberta (komentarz)

33 Istnieją alternatywne algorytmy tworzenia tych samych lub podobnych fraktali (najczęściej wybiera się optymalny) Z definicji fraktale są nieskończone, ale na potrzeby algorytmów zawsze określa się moment stopu (określone n, albo rozmiar najmniejszej części) Złożoność obliczeniowa podanych przykładów jest rzędu wykładniczego (z tego powodu nie wykonuje się bardzo wielu kroków rekurencyjnych) Podsumowanie

34 W wielu algorytmach tworzących fraktale wykorzystuje się metodę gry w chaos Powyższa technika pozwala na szersze zastosowanie iteracji i otrzymanie zadowalających rezultatów przy stosunkowo niewielkiej liczbie obliczeń (zalecane zwłaszcza dla bardzo rozbudowanych i nietypowych fraktali) Większość fraktali ma wymiar podobieństwa (fraktalny) z przedziału (1;2). Wymiar ten jest zawsze >0 Podsumowanie c.d.

35 Podziękowania DZIĘKUJĘ ZA UWAGĘ!

FRAKTALE I SAMOPODOBIEŃSTWO

FRAKTALE I SAMOPODOBIEŃSTWO FRAKTALE I SAMOPODOBIEŃSTWO Mariusz Gromada marzec 2003 mariusz.gromada@wp.pl http://multifraktal.net 1 Wstęp Fraktalem nazywamy każdy zbiór, dla którego wymiar Hausdorffa-Besicovitcha (tzw. wymiar fraktalny)

Bardziej szczegółowo

Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego

Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego Wstęp Rekurencja jest to wywołanie podprogramu (procedury) samej przez siebie. W logo zapis rekurencji będzie wyglądał następująco: oto nazwa_funkcji czynności_wykonywane_przez_procedurę nazwa_funkcji

Bardziej szczegółowo

Zadania domowe. Ćwiczenie 2. Rysowanie obiektów 2-D przy pomocy tworów pierwotnych biblioteki graficznej OpenGL

Zadania domowe. Ćwiczenie 2. Rysowanie obiektów 2-D przy pomocy tworów pierwotnych biblioteki graficznej OpenGL Zadania domowe Ćwiczenie 2 Rysowanie obiektów 2-D przy pomocy tworów pierwotnych biblioteki graficznej OpenGL Zadanie 2.1 Fraktal plazmowy (Plasma fractal) Kwadrat należy pokryć prostokątną siatką 2 n

Bardziej szczegółowo

Fraktale deterministyczne i stochastyczne. Katarzyna Weron Katedra Fizyki Teoretycznej

Fraktale deterministyczne i stochastyczne. Katarzyna Weron Katedra Fizyki Teoretycznej Fraktale deterministyczne i stochastyczne Katarzyna Weron Katedra Fizyki Teoretycznej Szare i Zielone Scena z Fausta Goethego (1749-1832), Mefistofeles do doktora (2038-2039): Wszelka, mój bracie, teoria

Bardziej szczegółowo

samopodobnym nieskończenie subtelny

samopodobnym nieskończenie subtelny Fraktale Co to jest fraktal? Według definicji potocznej fraktal jest obiektem samopodobnym tzn. takim, którego części są podobne do całości lub nieskończenie subtelny czyli taki, który ukazuje subtelne

Bardziej szczegółowo

Modele i symulacje - Scratch i Excel

Modele i symulacje - Scratch i Excel Instytut Matematyki Uniwersytet Gdański Literatura P. Szlagowski, Programowanie wizualne scratch 2.0 SCRATCH jest językiem programowania, w którym możesz stworzyć własne interaktywne historyjki, animacje,

Bardziej szczegółowo

Grafika Komputerowa Materiały Laboratoryjne

Grafika Komputerowa Materiały Laboratoryjne Grafika Komputerowa Materiały Laboratoryjne Laboratorium 6 Processing c.d. Wstęp Laboratorium 6 poszerza zagadnienie generowania i przetwarzania obrazów z wykorzystaniem języka Processing 2, dedykowanego

Bardziej szczegółowo

Gra w chaos i sekwencje DNA

Gra w chaos i sekwencje DNA Jest to tekst związany z odczytem wygłoszonym na XLIX Szkole Matematyki Poglądowej, Wyjątki, Nadarzyn, sierpień 2012. Gra w chaos i sekwencje DNA Magdalena NOWAK, Kielce Nasza opowieść rozgrywa się w krainie

Bardziej szczegółowo

Systemy Lindenmayera (L-systemy)

Systemy Lindenmayera (L-systemy) Systemy Lindenmayera (L-systemy) L-systemy Zastosowania: Generowanie fraktali Modelowanie roślin L-systemy Fraktale (łac. fractus złamany, cząstkowy) cechy samopodobieństwa Krzywa Kocha (płatek śniegu)

Bardziej szczegółowo

FRAKTALE. nie tworzą się z przypadku. Są tworzone naturalnie przez otaczającą nas przyrodę, bądź za pomocą

FRAKTALE. nie tworzą się z przypadku. Są tworzone naturalnie przez otaczającą nas przyrodę, bądź za pomocą Małgorzata Mielniczuk FRAKTALE Poniższy referat będzie traktować o fraktalach, majestatycznych wzorach, których kręte linie nie tworzą się z przypadku. Są tworzone naturalnie przez otaczającą nas przyrodę,

Bardziej szczegółowo

INTERAKTYWNA KOMUNIKACJA WIZUALNA. Systemy Lindenmayera (L-systemy)

INTERAKTYWNA KOMUNIKACJA WIZUALNA. Systemy Lindenmayera (L-systemy) INTERAKTYWNA KOMUNIKACJA WIZUALNA Systemy Lindenmayera () Zastosowania: Generowanie fraktali Modelowanie roślin Fraktale (łac. fractus złamany, cząstkowy) cechy samopodobieństwa Krzywa Kocha (płatek śniegu)

Bardziej szczegółowo

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów.

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów. Rekurencja Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów. Zgodnie ze znaczeniem informatycznym algorytm rekurencyjny to taki który korzysta z samego

Bardziej szczegółowo

Pracę wykonali: -Bryjak Mateusz -Chudziak Paweł -Palacz Angelika -Skorwider Dariusz

Pracę wykonali: -Bryjak Mateusz -Chudziak Paweł -Palacz Angelika -Skorwider Dariusz Pracę wykonali: -Bryjak Mateusz -Chudziak Paweł -Palacz Angelika -Skorwider Dariusz Symetria osiowa- przekształcenie płaszczyzny względem pewnej prostej, jest ona osią symetrii. Każdemu punktowi A przyporządkowujemy

Bardziej szczegółowo

START. Wprowadź (v, t) S:=v*t. Wyprowadź (S) KONIEC

START. Wprowadź (v, t) S:=v*t. Wyprowadź (S) KONIEC GRUPA I Co to jest algorytm, a czym jest program komputerowy? Algorytm: uporządkowany i uściślony sposób rozwiązywania problemu, zawierający szczegółowy opis wykonywanych czynności. Program komputerowy:

Bardziej szczegółowo

Fraktale wokół nas. Leszek Rudak Uniwersytet Warszawski. informatyka +

Fraktale wokół nas. Leszek Rudak Uniwersytet Warszawski. informatyka + Fraktale wokół nas Leszek Rudak Uniwersytet Warszawski informatyka + 1 Podobieństwo figur informatyka + 2 Figury podobne Figury są podobne gdy proporcjonalnie zwiększając lub zmniejszając jedną z nich

Bardziej szczegółowo

REKURENCJA W JĘZYKU HASKELL. Autor: Walczak Michał

REKURENCJA W JĘZYKU HASKELL. Autor: Walczak Michał REKURENCJA W JĘZYKU HASKELL Autor: Walczak Michał CZYM JEST REKURENCJA? Rekurencja zwana rekursją, polega na wywołaniu przez funkcję samej siebie. Algorytmy rekurencyjne zastępują w pewnym sensie iteracje.

Bardziej szczegółowo

Rekurencja (rekursja)

Rekurencja (rekursja) Rekurencja (rekursja) Rekurencja wywołanie funkcji przez nią samą wewnątrz ciała funkcji. Rekurencja może być pośrednia funkcja jest wywoływana przez inną funkcję, wywołaną (pośrednio lub bezpośrednio)

Bardziej szczegółowo

Algorytm selekcji Hoare a. Łukasz Miemus

Algorytm selekcji Hoare a. Łukasz Miemus Algorytm selekcji Hoare a Łukasz Miemus 1 lutego 2006 Rozdział 1 O algorytmie 1.1 Problem Mamy tablicę A[N] różnych elementów i zmienną int K, takie że 1 K N. Oczekiwane rozwiązanie to określenie K-tego

Bardziej szczegółowo

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Wykład: 13 Rekurencja 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Rekurencja - pojęcie 2 Rekurencja - pojęcie Rekurencja (rekursja) wywołanie

Bardziej szczegółowo

Obliczenia iteracyjne

Obliczenia iteracyjne Lekcja Strona z Obliczenia iteracyjne Zmienne iteracyjne (wyliczeniowe) Obliczenia iteracyjne wymagają zdefiniowania specjalnej zmiennej nazywanej iteracyjną lub wyliczeniową. Zmienną iteracyjną od zwykłej

Bardziej szczegółowo

Podręcznik. Przykład 1: Wyborcy

Podręcznik. Przykład 1: Wyborcy MODELOWANIE RZECZYWISTOŚCI Daniel Wójcik Instytut Biologii Doświadczalnej PAN d.wojcik@nencki.gov.pl tel. 5892 424 http://www.neuroinf.pl/members/danek/swps/ Iwo Białynicki-Birula Iwona Białynicka-Birula

Bardziej szczegółowo

Zadanie 1. Algorytmika ćwiczenia

Zadanie 1. Algorytmika ćwiczenia Zadanie 1 Algorytmika ćwiczenia Zadanie 2 Zadanie 3 Zadanie 4 Zadanie 5 Zadanie 6 Zadanie 7 Wiązka zadań Ułamki dwójkowe W systemach pozycyjnych o podstawie innej niż 10 można zapisywać nie tylko liczby

Bardziej szczegółowo

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch

Wykład 8. Rekurencja. Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. L. Peter Deutsch Wykład 8 Iterować jest rzeczą ludzką, wykonywać rekursywnie boską. Smok podsuszony zmok (patrz: Zmok). Zmok zmoczony smok (patrz: Smok). L. Peter Deutsch Stanisław Lem Wizja lokalna J. Cichoń, P. Kobylański

Bardziej szczegółowo

Wstęp do programowania. Listy. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Listy. Piotr Chrząstowski-Wachtel Wstęp do programowania Listy Piotr Chrząstowski-Wachtel Do czego stosujemy listy? Listy stosuje się wszędzie tam, gdzie występuje duży rozrzut w możliwym rozmiarze danych, np. w reprezentacji grafów jeśli

Bardziej szczegółowo

Strategia "dziel i zwyciężaj"

Strategia dziel i zwyciężaj Strategia "dziel i zwyciężaj" W tej metodzie problem dzielony jest na kilka mniejszych podproblemów podobnych do początkowego problemu. Problemy te rozwiązywane są rekurencyjnie, a następnie rozwiązania

Bardziej szczegółowo

Wstęp do programowania. Drzewa podstawowe techniki. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Drzewa podstawowe techniki. Piotr Chrząstowski-Wachtel Wstęp do programowania Drzewa podstawowe techniki Piotr Chrząstowski-Wachtel Drzewa wyszukiwań Drzewa często służą do przechowywania informacji. Jeśli uda sie nam stworzyć drzewo o niewielkiej wysokości

Bardziej szczegółowo

Zbiór Cantora. Diabelskie schody.

Zbiór Cantora. Diabelskie schody. Zbiór Cantora. Diabelskie schody. Autor: Norbert Miękina Zespół Szkół nr 3 im. ks. prof. Józefa Tischnera ul. Krakowska 20 32-700 Bochnia tel. 14 612-27-79 Opiekun: mgr Barbara Góra 1 W matematyce sztuka

Bardziej szczegółowo

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. 1. Instrukcję case t of... w przedstawionym fragmencie programu moŝna zastąpić: var t : integer; write( Podaj

Bardziej szczegółowo

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku WYKŁ 3 WYPŁNINI OSZRÓW. Wypełnianie wieloboku Zasada parzystości: Prosta, która nie przechodzi przez wierzchołek przecina wielobok parzystą ilość razy. Plan wykładu: Wypełnianie wieloboku Wypełnianie konturu

Bardziej szczegółowo

Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu,

Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu, wprowadzenie Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu, w przepisie tym podaje się opis czynności, które trzeba wykonać, oraz dane, dla których algorytm będzie określony.

Bardziej szczegółowo

Paradygmaty programowania

Paradygmaty programowania Paradygmaty programowania Jacek Michałowski, Piotr Latanowicz 15 kwietnia 2014 Jacek Michałowski, Piotr Latanowicz () Paradygmaty programowania 15 kwietnia 2014 1 / 12 Zadanie 1 Zadanie 1 Rachunek predykatów

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

Bardziej szczegółowo

ECDL Podstawy programowania Sylabus - wersja 1.0

ECDL Podstawy programowania Sylabus - wersja 1.0 ECDL Podstawy programowania Sylabus - wersja 1.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu Podstawy programowania. Sylabus opisuje, poprzez efekty uczenia się, zakres wiedzy

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo

Julia 4D - raytracing

Julia 4D - raytracing i przykładowa implementacja w asemblerze Politechnika Śląska Instytut Informatyki 27 sierpnia 2009 A teraz... 1 Fraktale Julia Przykłady Wstęp teoretyczny Rendering za pomocą śledzenia promieni 2 Implementacja

Bardziej szczegółowo

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl System dziesiętny 7 * 10 4 + 3 * 10 3 + 0 * 10 2 + 5 *10 1 + 1 * 10 0 = 73051 Liczba 10 w tym zapisie nazywa się podstawą systemu liczenia. Jeśli liczba 73051 byłaby zapisana w systemie ósemkowym, co powinniśmy

Bardziej szczegółowo

Algorytmy i Struktury Danych

Algorytmy i Struktury Danych POLITECHNIKA KRAKOWSKA WYDZIAŁ INŻYNIERII ELEKTRYCZNEJ i KOMPUTEROWEJ Katedra Automatyki i Technik Informacyjnych Algorytmy i Struktury Danych www.pk.edu.pl/~zk/aisd_hp.html Wykładowca: dr inż. Zbigniew

Bardziej szczegółowo

Definicja. Ciąg wejściowy: Funkcja uporządkowująca: Sortowanie polega na: a 1, a 2,, a n-1, a n. f(a 1 ) f(a 2 ) f(a n )

Definicja. Ciąg wejściowy: Funkcja uporządkowująca: Sortowanie polega na: a 1, a 2,, a n-1, a n. f(a 1 ) f(a 2 ) f(a n ) SORTOWANIE 1 SORTOWANIE Proces ustawiania zbioru elementów w określonym porządku. Stosuje się w celu ułatwienia późniejszego wyszukiwania elementów sortowanego zbioru. 2 Definicja Ciąg wejściowy: a 1,

Bardziej szczegółowo

Programowanie w VB Proste algorytmy sortowania

Programowanie w VB Proste algorytmy sortowania Programowanie w VB Proste algorytmy sortowania Sortowanie bąbelkowe Algorytm sortowania bąbelkowego polega na porównywaniu par elementów leżących obok siebie i, jeśli jest to potrzebne, zmienianiu ich

Bardziej szczegółowo

3.27pt. Algorytmy i programowanie ze Scratchem

3.27pt. Algorytmy i programowanie ze Scratchem 3.27pt Instytut Matematyki Uniwersytet Gdański Literatura P. Szlagowski, Programowanie wizualne scratch 2.0 SCRATCH jest językiem programowania, w którym możesz stworzyć własne interaktywne historyjki,

Bardziej szczegółowo

Technologia informacyjna Algorytm Janusz Uriasz

Technologia informacyjna Algorytm Janusz Uriasz Technologia informacyjna Algorytm Janusz Uriasz Algorytm Algorytm - (łac. algorithmus); ścisły przepis realizacji działań w określonym porządku, system operacji, reguła komponowania operacji, sposób postępowania.

Bardziej szczegółowo

Sortowanie przez scalanie

Sortowanie przez scalanie Sortowanie przez scalanie Wykład 2 12 marca 2019 (Wykład 2) Sortowanie przez scalanie 12 marca 2019 1 / 17 Outline 1 Metoda dziel i zwyciężaj 2 Scalanie Niezmiennik pętli - poprawność algorytmu 3 Sortowanie

Bardziej szczegółowo

Języki formalne i automaty Ćwiczenia 5

Języki formalne i automaty Ćwiczenia 5 Języki formalne i automaty Ćwiczenia 5 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 L-systemy... 2 Grafika żółwia... 2 Bibliografia... 5 Zadania... 6 Zadania na 3.0... 6 Zadania

Bardziej szczegółowo

Przedmiotowy Konkurs Informatyczny LOGIA powołany przez Mazowieckiego Kuratora Oświaty

Przedmiotowy Konkurs Informatyczny LOGIA powołany przez Mazowieckiego Kuratora Oświaty Zadanie Ogniwa minilogia 16 (2017/18), etap 3 Treść zadania Napisz dwuparametrową procedurę/funkcję ogniwa, po wywołaniu której na środku ekranu powstanie rysunek łańcuszka złożonego z dwukolorowych ogniw

Bardziej szczegółowo

TEORETYCZNE PODSTAWY INFORMATYKI

TEORETYCZNE PODSTAWY INFORMATYKI 1 TEORETYCZNE PODSTAWY INFORMATYKI 16/01/2017 WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Repetytorium złożoność obliczeniowa 2 Złożoność obliczeniowa Notacja wielkie 0 Notacja Ω i Θ Rozwiązywanie

Bardziej szczegółowo

Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej. Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1

Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej. Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1 Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1 Etapy rozwiązywania problemu PROBLEM wybór metody rozwiązania ALGORYTM 1.

Bardziej szczegółowo

Technologie informacyjne - wykład 12 -

Technologie informacyjne - wykład 12 - Zakład Fizyki Budowli i Komputerowych Metod Projektowania Instytut Budownictwa Wydział Budownictwa Lądowego i Wodnego Politechnika Wrocławska Technologie informacyjne - wykład 12 - Prowadzący: Dmochowski

Bardziej szczegółowo

Podstawy programowania 2. Temat: Funkcje i procedury rekurencyjne. Przygotował: mgr inż. Tomasz Michno

Podstawy programowania 2. Temat: Funkcje i procedury rekurencyjne. Przygotował: mgr inż. Tomasz Michno Instrukcja laboratoryjna 6 Podstawy programowania 2 Temat: Funkcje i procedury rekurencyjne Przygotował: mgr inż. Tomasz Michno Wstęp teoretyczny Rekurencja (inaczej nazywana rekursją, ang. recursion)

Bardziej szczegółowo

2.1. Duszek w labiryncie

2.1. Duszek w labiryncie https://app.wsipnet.pl/podreczniki/strona/38741 2.1. Duszek w labiryncie DOWIESZ SIĘ, JAK sterować duszkiem, stosować pętlę zawsze, wykorzystywać blok warunkowy jeżeli. Sterowanie żółwiem, duszkiem lub

Bardziej szczegółowo

Zaawansowane algorytmy i struktury danych

Zaawansowane algorytmy i struktury danych Zaawansowane algorytmy i struktury danych u dr Barbary Marszał-Paszek Opracowanie pytań teoretycznych z egzaminów. Strona 1 z 12 Pytania teoretyczne z egzaminu pisemnego z 25 czerwca 2014 (studia dzienne)

Bardziej szczegółowo

PROPOZYCJA ZASTOSOWANIA WYMIARU PUDEŁKOWEGO DO OCENY ODKSZTAŁCEŃ PRZEBIEGÓW ELEKTROENERGETYCZNYCH

PROPOZYCJA ZASTOSOWANIA WYMIARU PUDEŁKOWEGO DO OCENY ODKSZTAŁCEŃ PRZEBIEGÓW ELEKTROENERGETYCZNYCH Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych Nr 56 Politechniki Wrocławskiej Nr 56 Studia i Materiały Nr 24 2004 Krzysztof PODLEJSKI *, Sławomir KUPRAS wymiar fraktalny, jakość energii

Bardziej szczegółowo

która metoda jest najlepsza

która metoda jest najlepsza która metoda jest najlepsza dr inż. Marek Żabka Instytut Matematyki Wydział Matematyki Stosowanej Politechnika Śląska 20 września 2012r Nowa metoda tworzenia grafiki na stronie internetowej: element,,canvas

Bardziej szczegółowo

Algorytmy i struktury danych. Wykład 4

Algorytmy i struktury danych. Wykład 4 Wykład 4 Różne algorytmy - obliczenia 1. Obliczanie wartości wielomianu 2. Szybkie potęgowanie 3. Algorytm Euklidesa, liczby pierwsze, faktoryzacja liczby naturalnej 2017-11-24 Algorytmy i struktury danych

Bardziej szczegółowo

Scenariusz lekcji opartej na programie Program nauczania informatyki w gimnazjum DKW-4014-87/99

Scenariusz lekcji opartej na programie Program nauczania informatyki w gimnazjum DKW-4014-87/99 Scenariusz lekcji opartej na programie Program nauczania informatyki w gimnazjum DKW-4014-87/99 Techniki algorytmiczne realizowane przy pomocy grafiki żółwia w programie ELI 2,0. Przedmiot: Informatyka

Bardziej szczegółowo

Wykład 3. Metoda dziel i zwyciężaj

Wykład 3. Metoda dziel i zwyciężaj Wykład 3 Metoda dziel i zwyciężaj 1 Wprowadzenie Technika konstrukcji algorytmów dziel i zwyciężaj. przykładowe problemy: Wypełnianie planszy Poszukiwanie (binarne) Sortowanie (sortowanie przez łączenie

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne Algorytmy i struktury danych Wykład VIII Elementarne techniki algorytmiczne Co dziś? Algorytmy zachłanne (greedyalgorithms) 2 Tytułem przypomnienia metoda dziel i zwyciężaj. Problem można podzielić na

Bardziej szczegółowo

narzędzie Linia. 2. W polu koloru kliknij kolor, którego chcesz użyć. 3. Aby coś narysować, przeciągnij wskaźnikiem w obszarze rysowania.

narzędzie Linia. 2. W polu koloru kliknij kolor, którego chcesz użyć. 3. Aby coś narysować, przeciągnij wskaźnikiem w obszarze rysowania. Elementy programu Paint Aby otworzyć program Paint, należy kliknąć przycisk Start i Paint., Wszystkie programy, Akcesoria Po uruchomieniu programu Paint jest wyświetlane okno, które jest w większej części

Bardziej szczegółowo

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie: Rekurencje Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie: T(n) = Θ(1) (dla n = 1) T(n) = 2 T(n/2) + Θ(n) (dla n

Bardziej szczegółowo

Podstawy Informatyki. Metalurgia, I rok. Rekurencja. skomplikowane zadanie. Rekurencja

Podstawy Informatyki. Metalurgia, I rok. Rekurencja. skomplikowane zadanie. Rekurencja Podstawy Informatyki Metalurgia, I rok Rekurencja z łacińskiego oznacza to przybiec z powrotem - osiągniesz rzecz wielką, jeśli zawrócisz po to, by osiągnąć rzeczy małe Małe dziecko otrzymuje polecenie

Bardziej szczegółowo

Podstawy Informatyki. Metalurgia, I rok. Wykład 5 Rekurencja

Podstawy Informatyki. Metalurgia, I rok. Wykład 5 Rekurencja Podstawy Informatyki Metalurgia, I rok Wykład 5 Rekurencja Rekurencja z łacińskiego oznacza to przybiec z powrotem - osiągniesz rzecz wielką, jeśli zawrócisz po to, by osiągnąć rzeczy małe Przykład: Małe

Bardziej szczegółowo

Rekurencja/rekursja. Iluzja istnienia wielu kopii tego samego algorytmu (aktywacji) Tylko jedna aktywacja jest aktywna w danej chwili

Rekurencja/rekursja. Iluzja istnienia wielu kopii tego samego algorytmu (aktywacji) Tylko jedna aktywacja jest aktywna w danej chwili rekurencja 1 Rekurencja/rekursja Alternatywny dla pętli sposób powtarzania pewnych czynności; kolejny etap podzadanie poprzedniego Rekursja może być zamieniona na iteracje Cechy rekurencji Rozłożenie problemu

Bardziej szczegółowo

Wykład 4: Fraktale deterministyczne i stochastyczne

Wykład 4: Fraktale deterministyczne i stochastyczne Wykład 4: Fraktale deterministycne i stochastycne Fiyka komputerowa 005 Kataryna Weron, kweron@ift.uni.wroc.pl Co to jest fraktal? Złożona budowa dowolnie mały jego fragment jest równie skomplikowany jak

Bardziej szczegółowo

Całkowanie numeryczne

Całkowanie numeryczne Całkowanie numeryczne Nie zawsze możliwe jest wyznaczenie analitycznego wzoru będącego wynikiem całkowania danej funkcji f(x). Praktycznie zawsze możne jednak wyznaczyć całkę oznaczoną funkcji przy podanych

Bardziej szczegółowo

Następnie zdefiniujemy utworzony szkic jako blok, wybieramy zatem jak poniżej

Następnie zdefiniujemy utworzony szkic jako blok, wybieramy zatem jak poniżej Zadanie 1 Wykorzystanie opcji Blok, Podziel oraz Zmierz Funkcja Blok umożliwia zdefiniowanie dowolnego złożonego elementu rysunkowego jako nowy blok a następnie wykorzystanie go wielokrotnie w tworzonym

Bardziej szczegółowo

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel Wstęp do programowania Procedury i funkcje Piotr Chrząstowski-Wachtel Po co procedury i funkcje? Gdyby jakis tyran zabronił korzystać z procedur lub funkcji, to informatyka by upadła! Procedury i funkcje

Bardziej szczegółowo

Wstęp do Programowania potok funkcyjny

Wstęp do Programowania potok funkcyjny Wstęp do Programowania potok funkcyjny Marcin Kubica 2010/2011 Outline Procedury wyższych rzędów 1 Procedury wyższych rzędów jako abstrakcje konstrukcji programistycznych Intuicje Procedury wyższych rzędów

Bardziej szczegółowo

I. Funkcja kwadratowa

I. Funkcja kwadratowa Pojęcia, wymagania i przykładowe zadania na egzamin poprawkowy w roku szkolnym 2018/2019 w CKZiU nr 3 Ekonomik w Zielonej Górze KLASA III fl POZIOM PODSTAWOWY I. Funkcja kwadratowa narysować wykres funkcji

Bardziej szczegółowo

ALGORYTMY I STRUKTURY DANYCH

ALGORYTMY I STRUKTURY DANYCH KATEDRASYSTEMÓWOBLICZENIOWYCH ALGORYTMY I STRUKTURY DANYCH 1.Rekurencja Rekurencja inaczej rekursja (ang. recursion) to wywołanie z poziomu metody jej samej. Programowanie z wykorzytaniem rekurencji pozwala

Bardziej szczegółowo

Metody Kompilacji Wykład 7 Analiza Syntaktyczna

Metody Kompilacji Wykład 7 Analiza Syntaktyczna Metody Kompilacji Wykład 7 Analiza Syntaktyczna Parsowanie Parsowanie jest to proces określenia jak ciąg terminali może być generowany przez gramatykę. Włodzimierz Bielecki WI ZUT 2/57 Parsowanie Dla każdej

Bardziej szczegółowo

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D Wprowadzenie do rysowania w 3D 13 Praca w środowisku 3D Pierwszym krokiem niezbędnym do rozpoczęcia pracy w środowisku 3D programu AutoCad 2010 jest wybór odpowiedniego obszaru roboczego. Można tego dokonać

Bardziej szczegółowo

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno Instrukcja laboratoryjna 5 Podstawy programowania 2 Temat: Drzewa binarne Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Drzewa są jedną z częściej wykorzystywanych struktur danych. Reprezentują

Bardziej szczegółowo

1. A 2. A 3. B 4. B 5. C 6. B 7. B 8. D 9. A 10. D 11. C 12. D 13. B 14. D 15. C 16. C 17. C 18. B 19. D 20. C 21. C 22. D 23. D 24. A 25.

1. A 2. A 3. B 4. B 5. C 6. B 7. B 8. D 9. A 10. D 11. C 12. D 13. B 14. D 15. C 16. C 17. C 18. B 19. D 20. C 21. C 22. D 23. D 24. A 25. 1. A 2. A 3. B 4. B 5. C 6. B 7. B 8. D 9. A 10. D 11. C 12. D 13. B 14. D 15. C 16. C 17. C 18. B 19. D 20. C 21. C 22. D 23. D 24. A 25. A Najłatwiejszym sposobem jest rozpatrzenie wszystkich odpowiedzi

Bardziej szczegółowo

Algorytmy i struktury danych. wykład 2

Algorytmy i struktury danych. wykład 2 Plan wykładu: Pojęcie algorytmu. Projektowanie wstępujące i zstępujące. Rekurencja. Pojęcie algorytmu Pojęcie algorytmu Algorytm skończony zbiór operacji, koniecznych do wykonania zadania z pewnej klasy

Bardziej szczegółowo

EGZAMIN MATURALNY W ROKU SZKOLNYM 2014/2015

EGZAMIN MATURALNY W ROKU SZKOLNYM 2014/2015 EGZAMIN MATURALNY W ROKU SZKOLNYM 0/0 FORMUŁA OD 0 ( NOWA MATURA ) MATEMATYKA POZIOM PODSTAWOWY ZASADY OCENIANIA ROZWIĄZAŃ ZADAŃ ARKUSZ MMA-P CZERWIEC 0 Egzamin maturalny z matematyki nowa formuła Klucz

Bardziej szczegółowo

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 Wykład 9 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 stos i operacje na stosie odwrotna notacja polska języki oparte na ONP przykłady programów J. Cichoń, P. Kobylański Wstęp

Bardziej szczegółowo

Programowanie w Baltie klasa VII

Programowanie w Baltie klasa VII Programowanie w Baltie klasa VII Zadania z podręcznika strona 127 i 128 Zadanie 1/127 Zadanie 2/127 Zadanie 3/127 Zadanie 4/127 Zadanie 5/127 Zadanie 6/127 Ten sposób pisania programu nie ma sensu!!!.

Bardziej szczegółowo

Algorytmika i pseudoprogramowanie

Algorytmika i pseudoprogramowanie Przedmiotowy system oceniania Zawód: Technik Informatyk Nr programu: 312[ 01] /T,SP/MENiS/ 2004.06.14 Przedmiot: Programowanie Strukturalne i Obiektowe Klasa: druga Dział Dopuszczający Dostateczny Dobry

Bardziej szczegółowo

Reprezentacja i analiza obszarów

Reprezentacja i analiza obszarów Cechy kształtu Topologiczne Geometryczne spójność liczba otworów liczba Eulera szkielet obwód pole powierzchni środek cięŝkości ułoŝenie przestrzenne momenty wyŝszych rzędów promienie max-min centryczność

Bardziej szczegółowo

Fraktale. i Rachunek Prawdopodobieństwa

Fraktale. i Rachunek Prawdopodobieństwa Fraktale i Rachunek Prawdopodobieństwa Przyjrzyjmy się poniższemu rysunkowi, przedstawiającemu coś,, co kształtem tem przypomina drzewo o bardzo regularnej strukturze W jaki sposób b najłatwiej atwiej

Bardziej szczegółowo

Voter model on Sierpiński fractals Model głosujący na fraktalach Sierpińskiego

Voter model on Sierpiński fractals Model głosujący na fraktalach Sierpińskiego Voter model on Sierpiński fractals Model głosujący na fraktalach Sierpińskiego Krzysztof Suchecki Janusz A. Hołyst Wydział Fizyki Politechniki Warszawskiej Plan Model głosujący : definicja i własności

Bardziej szczegółowo

Optymalizacja ciągła

Optymalizacja ciągła Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej

Bardziej szczegółowo

Programowanie dynamiczne cz. 2

Programowanie dynamiczne cz. 2 Programowanie dynamiczne cz. 2 Wykład 7 16 kwietnia 2019 (Wykład 7) Programowanie dynamiczne cz. 2 16 kwietnia 2019 1 / 19 Outline 1 Mnożenie ciągu macierzy Konstruowanie optymalnego rozwiązania 2 Podstawy

Bardziej szczegółowo

6. Pętle while. Przykłady

6. Pętle while. Przykłady 6. Pętle while Przykłady 6.1. Napisz program, który, bez użycia rekurencji, wypisze na ekran liczby naturalne od pewnego danego n do 0 włącznie, w kolejności malejącej, po jednej liczbie na linię. Uwaga!

Bardziej szczegółowo

Informatyka wprowadzenie do algorytmów (II) dr hab. inż. Mikołaj Morzy

Informatyka wprowadzenie do algorytmów (II) dr hab. inż. Mikołaj Morzy Informatyka wprowadze do algorytmów (II) dr hab. inż. Mikołaj Morzy plan wykładu cechy algorytmów sposoby zapisu algorytmów klasyfikacja algorytmów przykłady algorytmów sumowa przeszukiwa ciągu liczb sortowa

Bardziej szczegółowo

Podstawy Informatyki. Inżynieria Ciepła, I rok. Iteracja warunkowadopóki(while) Blok instrukcji. Pascal: begin instrukcja1; C: { end;

Podstawy Informatyki. Inżynieria Ciepła, I rok. Iteracja warunkowadopóki(while) Blok instrukcji. Pascal: begin instrukcja1; C: { end; Podstawy Informatyki Inżyria Ciepła, I rok Wykład 8 Algorytmy, cd Instrukcja decyzyjna wybierz Zda wybierz służy do wyboru jednej z kilku możliwości Ma ono postać: wybierz przełącznik z wartość_1: zda_1

Bardziej szczegółowo

Przykład 1 wałek MegaCAD 2005 2D przykład 1 Jest to prosty rysunek wałka z wymiarowaniem. Założenia: 1) Rysunek z branży mechanicznej; 2) Opracowanie w odpowiednim systemie warstw i grup; Wykonanie 1)

Bardziej szczegółowo

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst. Schematy blokowe I Jeżeli po schematach blokowych będzie używany język C, to należy używać operatorów: '&&', ' ', '!=', '%' natomiast jeśli Ruby to 'and', 'or', '%', '!='. 1. Dostępne bloki: a) początek:

Bardziej szczegółowo

Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD

Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Wykład 11 Grafika 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Grafika GDI+ GDI+ - Graphics Device Interface jeden z trzech podstawowych komponentów

Bardziej szczegółowo

Scenariusz lekcji Ozobot w klasie: Ciąg Fibonacciego

Scenariusz lekcji Ozobot w klasie: Ciąg Fibonacciego Scenariusz lekcji Ozobot w klasie: Ciąg Fibonacciego Opracowanie scenariusza: Richard Born Adaptacja scenariusza na język polski: mgr Piotr Szlagor Tematyka: Informatyka, Matematyka, Rekurencja, Fibonacci,

Bardziej szczegółowo

Algorytmy i struktury danych.

Algorytmy i struktury danych. Algorytmy i struktury danych. Wykład 4 Krzysztof M. Ocetkiewicz Krzysztof.Ocetkiewicz@eti.pg.gda.pl Katedra Algorytmów i Modelowania Systemów, WETI, PG Problem plecakowy mamy plecak o określonej pojemności

Bardziej szczegółowo

Wymagania z matematyki na poszczególne stopnie szkolne w klasie trzeciej gimnazjum

Wymagania z matematyki na poszczególne stopnie szkolne w klasie trzeciej gimnazjum Wymagania z matematyki na poszczególne stopnie szkolne w klasie trzeciej gimnazjum I LICZBY I WYRAŻENIA ALGEBRAICZNE podawanie przykładów liczb naturalnych, całkowitych, wymiernych i niewymiernych; porównywanie

Bardziej szczegółowo

Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej

Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej Spis treści Autor: Marcin Orchel Algorytmika...2 Algorytmika w gimnazjum...2 Algorytmika w liceum...2 Język programowania w

Bardziej szczegółowo

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje Opracował: Zbigniew Rudnicki Powtórka z poprzedniego wykładu 2 1 Dokument, regiony, klawisze: Dokument Mathcada realizuje

Bardziej szczegółowo

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW http://metodycy.torun.pl/ m.informatyka@metodycy.torun.pl 1. Wprowadzenie do Pythona podstawowe informacje Python to język programowania wysokiego poziomu,

Bardziej szczegółowo

Wstęp do Programowania potok funkcyjny

Wstęp do Programowania potok funkcyjny i programowanie dynamiczne Wstęp do Programowania potok funkcyjny Marcin Kubica 2010/2011 i programowanie dynamiczne Outline 1 i programowanie dynamiczne i programowanie dynamiczne Rekurencyjny zapis rozwiązania

Bardziej szczegółowo

Reprezentacja i analiza obszarów

Reprezentacja i analiza obszarów Cechy kształtu Topologiczne Geometryczne spójność liczba otworów liczba Eulera szkielet obwód pole powierzchni środek ciężkości ułożenie przestrzenne momenty wyższych rzędów promienie max-min centryczność

Bardziej szczegółowo

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 9 Rekurencja

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 9 Rekurencja Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 9 Rekurencja Rekurencja z łacińskiego oznacza to przybiec z powrotem - osiągniesz rzecz wielką, jeśli zawrócisz po to, by osiągnąć rzeczy małe Przykład:

Bardziej szczegółowo

Logo Komeniusz. Gimnazjum w Tęgoborzy. Mgr Zofia Czech

Logo Komeniusz. Gimnazjum w Tęgoborzy. Mgr Zofia Czech Logo Komeniusz Gimnazjum w Tęgoborzy Mgr Zofia Czech to język strukturalny, umożliwiający dzielenie algorytmu na wyraźnie wyodrębnione problemy, których rozwiązanie opisuje się za pomocą procedur (tzn.

Bardziej szczegółowo

Plan prezentacji. Cechy charakterystyczne fraktali Zastosowanie fraktali Wymiar fraktalny D. Iteracyjny system funkcji (IFS)

Plan prezentacji. Cechy charakterystyczne fraktali Zastosowanie fraktali Wymiar fraktalny D. Iteracyjny system funkcji (IFS) Fraktale Plan prezentacji Wprowadzenie Cechy charakterystyczne fraktali Zastosowanie fraktali Wymiar fraktalny D Klasyczne fraktale Iteracyjny system funkcji (IFS) L-system Zbiory Julii i Mandelbrota Ruchy

Bardziej szczegółowo