Algorytmy i programowanie ze Scratchem

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

Download "Algorytmy i programowanie ze Scratchem"

Transkrypt

1 Instytut Matematyki Uniwersytet Gdański

2 Literatura I. Białynicki-Birula i I. Białynicka-Birula, Modelowanie rzeczywistości jak w komputerze postrzega się świat, Wyd. WNT, Warszawa, P. Szlagowski, Programowanie wizualne scratch 2.0 SCRATCH jest językiem programowania, w którym możesz stworzyć własne interaktywne historyjki, animacje, gry i muzykę. Aby zaczać pracować ze Scratchem należy zarejestrować się na stronie: scratch.mit.edu/. A następnie przejść do zakładki stwórz.

3 Literatura I. Białynicki-Birula i I. Białynicka-Birula, Modelowanie rzeczywistości jak w komputerze postrzega się świat, Wyd. WNT, Warszawa, P. Szlagowski, Programowanie wizualne scratch 2.0 SCRATCH jest językiem programowania, w którym możesz stworzyć własne interaktywne historyjki, animacje, gry i muzykę. Aby zaczać pracować ze Scratchem należy zarejestrować się na stronie: scratch.mit.edu/. A następnie przejść do zakładki stwórz.

4 Literatura I. Białynicki-Birula i I. Białynicka-Birula, Modelowanie rzeczywistości jak w komputerze postrzega się świat, Wyd. WNT, Warszawa, P. Szlagowski, Programowanie wizualne scratch 2.0 SCRATCH jest językiem programowania, w którym możesz stworzyć własne interaktywne historyjki, animacje, gry i muzykę. Aby zaczać pracować ze Scratchem należy zarejestrować się na stronie: scratch.mit.edu/. A następnie przejść do zakładki stwórz.

5 Literatura I. Białynicki-Birula i I. Białynicka-Birula, Modelowanie rzeczywistości jak w komputerze postrzega się świat, Wyd. WNT, Warszawa, P. Szlagowski, Programowanie wizualne scratch 2.0 SCRATCH jest językiem programowania, w którym możesz stworzyć własne interaktywne historyjki, animacje, gry i muzykę. Aby zaczać pracować ze Scratchem należy zarejestrować się na stronie: scratch.mit.edu/. A następnie przejść do zakładki stwórz.

6 Scratch-podstawy Wykonaj następujace zadania w Scratchu Przesuń swojego duszka w prawo. Następnie skręć w lewo i przesuń duszka do góry. Spraw, aby duszek po naciśnięciu spacji zmieniał kolor. Dodaj tło oraz nowego duszka. Spraw, aby pierwszy duszek przesuwał się naprzemiennie w prawo i w lewo. Drugi duszek ma coś mówić. Stwórz animacje podobna do prezentowanej na zajęciach (o podobnym stopniu trudności).

7 Scratch-podstawy Wykonaj następujace zadania w Scratchu Przesuń swojego duszka w prawo. Następnie skręć w lewo i przesuń duszka do góry. Spraw, aby duszek po naciśnięciu spacji zmieniał kolor. Dodaj tło oraz nowego duszka. Spraw, aby pierwszy duszek przesuwał się naprzemiennie w prawo i w lewo. Drugi duszek ma coś mówić. Stwórz animacje podobna do prezentowanej na zajęciach (o podobnym stopniu trudności).

8 Scratch-podstawy Wykonaj następujace zadania w Scratchu Przesuń swojego duszka w prawo. Następnie skręć w lewo i przesuń duszka do góry. Spraw, aby duszek po naciśnięciu spacji zmieniał kolor. Dodaj tło oraz nowego duszka. Spraw, aby pierwszy duszek przesuwał się naprzemiennie w prawo i w lewo. Drugi duszek ma coś mówić. Stwórz animacje podobna do prezentowanej na zajęciach (o podobnym stopniu trudności).

9 Scratch rysowanie figur Zadanie domowe (do ) Przeczytać od str. 8 do str. 24 ksiażkę Programowanie wizualne scratch 2.0. Wykonać zadania od 8 do 17 str Zadanie domowe (zrobić na ) Wykonać zadania 3 i 4 str. 37 oraz 6 str. 38 (z ksiażki Programowanie wizualne scratch 2.0) Poniższe zadania należy wykonać w programie Scratch. Zadanie 1 Narysuj kwadrat. Zrób to za pomoca dwóch różnych algorytmów. Czym te algorytmy się od siebie różnia? Zadanie 2 Narysuj trójkat równoboczny za pomoca dwóch różnych algorytmów. Zadanie 3 Narysuj sześciokat foremny oraz pięciokat foremny.

10 Scratch - zmienne i listy Zadanie 4 Narysuj okrag. Zadanie 5 Narysuj gwiazdę sześcioramienna, taka jak na poniższym rysunku. Zadanie 6 Napisać program, który po podaniu przed użytkownika długości boku kwadratu będzie obliczał jego pole. Zadanie 7 Napisać program, który po podaniu przed użytkownika długości boków prostokata będzie obliczał jego pole.

11 Scratch - zmienne i listy Zmienne i listy służa w Scratchu (w innych programach również) do przechowywania danych. Zmienne możemy traktować jako pojemnik, który umożliwia przechowywać różne przedmioty (liczby i tekst). Można je wypisywać, porównywać lub dokonywać na nich operacji matematycznych. Listy to narzędzie służace do przechowywania wielu danych w jednym miejscu. Można patrzeć na nie jak na zmienna, która zawiera w sobie wiele innych zmiennych. Uwaga: Aby ukryć zmienne lub listy w programie wystarczy je odhaczyć. Zadanie Zmodyfikować program z obliczaniem pola prostokata w ten sposób, aby program podawał odpowiedni komunikat w przypadku, gdy wprowadzania liczba nie będzie liczba dodatnia.

12 Scratch - zmienne i listy Zadanie 8 Napisz program rysujacy kolorowy kwiat (dokładny rysunek zostanie podany na ćwiczeniach). Napisanie tego programu rozbij na mniejsze zadania, które w ostateczności będa prowadziły do podania odpowiedniego algorytmu. Zadanie 9 Napisać program który będzie przepowiadał przyszłość w trzech dziedzinach: zdrowie, pieniadze, miłość. Jakiej struktury danych użyjesz w tym programie?

13 Algorytmy Algorytm to uporzadkowany opis postępowania przy rozwiazywaniu problemu z uwzględnieniem opisu danych i opisu kolejnych czynności, prowadzacy do jego rozwiazania w skończonym czasie. Algorytm możemy przedstawić w różniej formie: a) opis słowny; b) wypunktowana listę kroków; c) schemat blokowy; d) określony język programowania.

14 Specyfikacja zadania Specyfikacja zadania (problemu) jest opisem zadania, w którym wymienia się dane wejściowe i wyniki oraz zwiazek między danymi a wynikami (warunki jakie maja spełniać dane). Zadanie: Fabryka produkuje rocznie m samochodów osobowych i dostawczych. Oblicz, ile zostanie wyprodukowanych samochodów osobowych, jeśli produkcja samochodów dostawczych stanowi p% rocznej produkcji. Dane: Liczba naturalna m, liczba rzeczywista dodatnia p. Wynik: Liczba naturalna s, określajaca liczbę samochodów osobowych. Lista kroków: 1) Zacznij algorytm. 2) Wprowadź wartości: m i p. 3) Zmiennej s przypisujemy wartość wyrażenia: s := m pm ) Wyprowadź wynik: s. 5) Zakończ algorytm.

15 Algorytmy Zadanie domowe Narysuj schemat blokowy na podstawie listy kroków opisujacej algorytm rozwiazania zadania z produkcja samochodów. Zadanie 10 Ułożyć specyfikacje zadania oraz algorytm rozwiazania w postaci listy kroków dla następujacego zadania: Mamy trzy identyczne naczynia i wagę szalkowa bez odważników. W jednym naczyniu znajduje się 2/3 litra wody, dwa pozostałe sa puste. W jaki sposób odmierzyć dokładnie pół litra wody? Zadanie Czy zadanie z zagadka, problemem może być ciekawsze od typowego zadania z życia na układanie algorytmów?

16 Wydawanie reszty metoda zachłanna Problem Należy wydać resztę używajac jak najmniejszej liczby monet lub banknotów. Matoda zachłanna dla tego problemu polega na użyciu do wydania reszty największych możliwych nominałów (ale mniejszych od lub równych wydawanej wartości). Zanim zaczniemy wydawać resztę, musimy określić dostępne nominały (zapisujemy je w tablicy w kolejności malejacej). Algorytm zachłanny algorytm, który w celu wyznaczenia rozwiazania w każdym kroku dokonuje zachłannego, tj. najkorzystniejszego w danym kroku, rozwiazania czastkowego.

17 Wydawanie reszty metoda zachłanna Opis słowny algorytmu: Algorytm zaczynamy od sprawdzenia, czy wśród nominałów jest wartość mniejsza od lub równa reszcie (oznaczamy ja R). Jeśli odnaleziony nominał N jest równy R, to algorytm się kończy. Jeśli nie, to wybieramy największa możliwa liczbę L sztuk znalezionego nominału N mniejszego od R (zakładamy, że tablica nominałów posortowana jest malejaco). Liczbę tę otrzymujemy, dzielac R przez wartość odnalezionego nominału i biorac część całkowita z tego dzielenia. Następnie od reszty R odejmujemy wartość znalezionego nominału pomnożona przez liczbę nominałów wynikajacych z dzielenia. Szukanie powtarzamy wśród kolejnych nominałów dla pomniejszonej wartości R do czasu aż wypłacimy cała sumę.

18 Wydawanie reszty metoda zachłanna Zadanie 11 Korzystajac z podanego opisu, znajdź nominały, jakimi zostanie wydana reszta w wysokości 69 zł. Zbiór dostępnych nominałów to: {50, 20, 10, 5, 2, 1}. Pytanie Czy opis słowny algorytmu opisujacego wydawanie reszty jest łatwy do zrozumienia dla odbiorcy? Gdzie algorytm wydawania reszty może być stosowany? Zadanie domowe Na podstawie algorytmu wydawania reszty metoda zachłanna oraz rozwiazanego zadania napisz listę kroków oraz narysuj schemat blokowy do podanej specyfikacji. Dane: Zbiór nominałów {50, 20, 10, 5, 2, 1}, reszta R. Wynik: Liczba nominałów składajaca się na resztę R.

19 Schemat blokowy

20 Algorytm Euklidesa wyznaczania NWD Zadanie 12 Korzystajac z algorytmu Euklidesa wyznaczyć NWD liczb 28 i 21.

21 Algorytmy Zadanie: Obliczyć iloczyn n liczb całkowitych. Dane: n dowolnych liczb całkowitych, kolejno zapamiętywanych w zmiennej a. Wynik: wartość iloczynu: iloczyn. Lista kroków: 1. Zaczynamy algorytm. 2. Zmiennej iloczyn oraz i przypisujemy wartość jeden: iloczyn := 1; i := Wprowadzamy liczbę całkowita i zapamiętujemy ja w zmiennej a. 4. Pomnóż iloczyn przez wprowadzona liczbę a: iloczyn := iloczyn a. 5. Jeśli i nie jest równe n zwiększ licznik o jeden (i := i + 1) i wróć do kroku Wyprowadź wynik: iloczyn. 7. Zakończ algorytm.

22 Algorytmy Uwaga Każda z kolejno wprowadzanych liczb zapamiętujemy w zmiennej a (w ten sposób nie musimy korzystać z różnych zmiennych dla różnych liczb). Przypisanie i := i + 1 oznacza przypisanie wartości zmiennej i poprzedniej wartości tej zmiennej, powiększonej o 1. Zmienna i jest tzw. zmienna sterujac a pętli - steruje liczba wykonywanych kroków iteracji. Zadanie 13 1) Narysować schemat blokowy do listy kroków opisujacej wyznaczanie iloczynu n liczb całkowitych. 2) Na podstawie podanego algorytmu ułożyć w Scratchu program liczacy iloczyn pięciu dowolnych liczb całkowitych. 3) Zmodyfikować napisany program w ten sposób, aby liczbę liczb, która będzie mnożona podawał użytkownik programu. Niech duszek mówi, która z kolei liczbę właśnie podajemy oraz jaki jest wynik iloczynu.

23 Algorytmy Rodzaje algorytmów Algorytmy, w których nie określono żadnych warunków, sa nazywane algorytmami liniowymi. Algorytmy, w których wykonanie instrukcji uzależnione jest od spełnienia lub niespełnienia warunku, nazywane sa algorytmami warunkowymi. Iteracja w algorytmie polega na wielokrotnym powtarzaniu instrukcji. Algorytm rekurencyjny to taki, który wywołuje sam siebie, czasem wielokrotnie, do rozwiazania problemu.

24 Algorytmy warunkowe Najprostszym przypadku w algorytmie warunkowym mamy pojedynczy warunek do sprawdzenia. Jeśli warunek ten jest spełniony to program wykonuje określona czynność. Często w algorytmie warunkowym podaje się instrukcje, które maja być wykonane,gdy warunek nie jest spełniony. Zadanie 14 Napisać w Scratchu program w którym zadawane będzie pytanie: Ile jest 2 2? Jeśli użytkownik poda poprawna odpowiedź to program ma dać odpowiedź: Brawo. W przeciwnym razie program ma poinformować: a) Niestety 2 2 nie jest równe i tu podaje liczbę podana przez użytkownika. b) Niepoprawna odpowiedź i ma zadać ponowne to samo pytanie. Czynność ta ma być powtarzania aż użytkownik poda poprawna odpowiedź.

25 Algorytmy warunkowe Warunek w instrukcji warunkowej może też być złożonym warunkiem logicznym np. kilka pojedynczych warunków połaczonych spójnikami logicznymi: i, lub itp. Zadanie 15 Sprawdzić, czy odcinki o długościach a, b i c, będacych liczbami dodatnimi, można zbudować trójkat (dopilnuj, aby użytkownik musiał wpisywać liczby dodatnie). Napisz specyfikę tego zadania, algorytm w postaci listy kroków oraz program w Scratchu.

26 Algorytmy warunkowe Instrukcje warunkowe moga być zagnieżdżone (mówiac potocznie: jedna instrukcja warunkowa zawiera się w drugiej itd.) Zadanie 16 Jeśli uczeń otrzyma z testu z angielskiego od 0 do 50 procent to jest przyjmowany do grupy podstawowej, w przeciwnym razie do grupy zaawansowanej. a) Jeśli wprowadzona zostanie liczba spoza zakresu to program ma informować, że została wprowadzona liczba spoza zakresu (i nie pytać się ponownie). Napisać specyfikę zadania, ułożyć algorytm z zagnieżdżona instrukcja warunkowa w postaci schematu blokowego i napisać program dla tego algorytmu. b) W taki sposób zmodyfikować program, aby po wprowadzeniu liczby spoza zakresu program o tym poinformował i zapytał się ponownie o liczbę uzyskanych punktów (tu już nie jest wymagane, aby użyć zagnieżdżonej instrukcji warunkowej).

27 Iteracja i rekurencja Iteracja polega na wielokrotnym powtarzaniu tej samej operacji (ciagu operacji). Iteracje implementujemy, stosujac tzw. pętle. Z pętla mamy do czynienia, gdy w pewnym kroku algorytmu wracamy do jednego z wcześniejszych kroków, co powoduje, że kroki te moga być wykonane wiele razy.

28 Iteracja i rekurencja Jednym z najprostszych algorytmów iteracyjnych, który poznaja uczniowie w szkole jest iteracyjny algorytm obliczania silni (n! = n).

29 Iteracja i rekurencja Zadanie 17 Ułożyć w Scrtatchu program wyznaczajacy n! (n - dowolna liczba całkowita nieujemna) za pomoca algorytmu iteracyjnego. Instrukcja iteracyjna może być zagnieżdżona, czyli instrukcja powtarzana w pętli może być kolejna instrukcja.

30 Iteracja i rekurencja Zadanie 18 Napisać program, który do dwóch list cyfry1 i cyfry2 wczytywał będzie cyfry. A następnie podawał kolejno wszystkie liczby dwucyfrowe, które na miejscu jednostek maja liczbę z listy cyfry1 a na miejscu dziesiatek cyfrę z listy cyfry2 (liczby nie musza być podawane w kolejności rosnacej lub malejacej). Wykonaj zadanie w kilku wersjach: a) Cyfry1 zawieraja wszystkie cyfry od 0 do 9, a cyfry2 zawieraja cyfry od 1 do 9. b) Cyfry do list podaje użytkownik (jakie ograniczenia trzeba nałożyć na wprowadzane przez użytkownika liczby). c) Dodaj do podpunktu b warunek, aby cyfry nie mogły się powtarzać na liście.

31 Iteracja i rekurencja Z rekurencja mamy do czynienia, gdy, określajac jakieś pojęcie odwołujemy się w definicji do niego samego. Na rysunku rekurencja jest przedstawiona w postaci zagłębiajacych się w siebie, podobnych, coraz to mniejszych figur.

32 Iteracja i rekurencja

33 Iteracja i rekurencja Jednym z najprostszych algorytmów iteracyjnych, który poznaja uczniowie w szkole jest rekurencyjny algorytm obliczania silni (n! = n (n 1)!).

34 Scratch - algorytmy rekurencyjne Od wersji 2.0, Scratch pozwala na tworzenie własnych bloczków. Tworzenie nowych bloczków można utożsamiać z procedurami (inaczej funkcja lub podprogram) w innych językach programowania. Procedura to wydzielona część programu wykonujaca jakieś operacje. Procedury stosuje się, aby uprościć program główny i zwiększyć czytelność kodu.

35 Scratch - algorytmy rekurencyjne Zadanie 19 a) Stwórz bloczek rysujacy kwadrat o zadanej przez użytkownika długości boku. Kwadrat ma być zamalowany w środku. W tym celu wybierz zakładkę więcej bloków. Nie zapomnij przy definiowaniu bloczku dodać parametru liczbowego. Aby wypełnić kwadrat kolorem należy rysować coraz to mniejsze kwadraty. Dodaj program rysujacy kwadrat, który będzie korzystał ze zdefiniowanego bloczku. b) Korzystajac z podpunktu a) narysuj kolorowa szachownicę o wymiarach 3 3.

36 Scratch - algorytmy Uwaga: W celu zdefiniowania bloczku rysujacego zamalowany kwadrat użyliśmy algorytmu rekurencyjnego (występuje tu odwołanie procedury do samej siebie). Poprawnie działajaca procedura rekurencyjna powinna zawierać instrukcję jeżeli. Przykładem zadań w których wykorzystuje się algorytmy rekurencyjne może być rysowanie spiral, czy fraktali. Zadanie 20 Narysować spirale w kształcie sześciokata foremnego zaczynajac od najdłuższego odcinka. Każdy kolejny odcinek ma być krótszy o 1. W procedurze parametrem ma być długość najdłuższego odcinka, czyli użytkownik programu podaje długość najdłuższego odcinka spirali.

37 Zadanie 21 Zmodyfikować powyższa procedurę w ten sposób, aby rysowanie spirali zaczynało się od środka spirali. W każdym kolejnym ruchu niech długość boku zwiększa się o 5. W procedurze parametrami maja być długość najkrótszego boku spirali i liczba odcinków z ilu składa się spirala. Zadanie domowe Napisać algorytm i program rysujacy spirale w dowolnym kształcie wielokata foremnego (użytkownik podaje ilość boków).

38 Zadanie domowe Przeczytać ósmy rozdział (str ) z ksiazki Modelowanie rzeczywistości jak w komputerze postrzega się świat i na tej podstawie odpowiedź na pytania: a) Co to jest figura samopodobna? Co to sa fraktale? b) Co to jest definicja rekurencyjna (rekursywna)? Podaj przykłady jej zastosowania. c) W jaki sposób powstaje krzywa Kocha i trójkat Sierpińskiego? d) Gdzie znalazły zastosowanie fraktale w rzeczywistym życiu?

39 Zadanie domowe Przeczytać ósmy rozdział (str ) z ksiazki Modelowanie rzeczywistości jak w komputerze postrzega się świat i na tej podstawie odpowiedź na pytania: a) Co to jest figura samopodobna? Co to sa fraktale? b) Co to jest definicja rekurencyjna (rekursywna)? Podaj przykłady jej zastosowania. c) W jaki sposób powstaje krzywa Kocha i trójkat Sierpińskiego? d) Gdzie znalazły zastosowanie fraktale w rzeczywistym życiu?

40 Zadanie domowe Przeczytać ósmy rozdział (str ) z ksiazki Modelowanie rzeczywistości jak w komputerze postrzega się świat i na tej podstawie odpowiedź na pytania: a) Co to jest figura samopodobna? Co to sa fraktale? b) Co to jest definicja rekurencyjna (rekursywna)? Podaj przykłady jej zastosowania. c) W jaki sposób powstaje krzywa Kocha i trójkat Sierpińskiego? d) Gdzie znalazły zastosowanie fraktale w rzeczywistym życiu?

41 Zadanie domowe Przeczytać ósmy rozdział (str ) z ksiazki Modelowanie rzeczywistości jak w komputerze postrzega się świat i na tej podstawie odpowiedź na pytania: a) Co to jest figura samopodobna? Co to sa fraktale? b) Co to jest definicja rekurencyjna (rekursywna)? Podaj przykłady jej zastosowania. c) W jaki sposób powstaje krzywa Kocha i trójkat Sierpińskiego? d) Gdzie znalazły zastosowanie fraktale w rzeczywistym życiu?

42 Scratch - algorytmy Etapy budowy krzywej Kocha: 1) Podział odcinka o długości l na trzy równe części i zastapienie środkowej części dwoma odcinkami każdy o l długości 3 i nachyleniu względem odcinka o 60. (zobacz rysunek) 2) Każdy z czterech odcinków ponownie zostanie podzielony na 3 części, a środkowa znów zastapimy dwoma odcinkami tak jak w kroku 1. 3) Każdy z szesnastu odcinków zostanie podzielony na 3 części, a środkowa znów zastapimy dwoma odcinkami tak jak w kroku 1 itd.

43 Scratch - algorytmy

44 L-systemy i grafika żółwia Zbiór poleceń: F poruszaj się do przodu krokiem o stałej długości l i narysuj linię od poprzedniej pozycji do nowej, f poruszaj się do przodu, tak jak poprzednio, ale nie rysuj linii (podnieś ogon), + obróć się w lewo (przeciwnie do ruchu wskazówek zegara) o stały kat δ, obróć się w prawo (zgodnie z ruchem wskazówek zegara) o stały kat δ,

45 L-systemy i grafika żółwia L-system: krzywa Kocha Aksjomat: F Reguły podstępowania: F F + F F + F + + Parametr: δ = 60 Na każdym etapie długość kroku l jest pomniejszania do 1/3 długości.

46 L-systemy i grafika żółwia Zadanie 22 Za pomoca L-systemu krzywa Kocha zaprogramować rysowanie Krzywej Kocha w programie Scratch

47 L-systemy i grafika żółwia Zadanie 23 Napisać L-system rysujacy krzywa Kocha obrócona o 180. Zmodyfikować tak program z poprzedniego zadania, aby rysował tę krzywa.

48 L-systemy i grafika żółwia Zadanie24 Napisać L-system rysujacy losowa krzywa Kocha tzn. z prawdopodobieństwem 1/2 losuję regułę normalnej krzywej Kocha oraz z prawdopodobieństwem 1/2 losuję regułę obróconej o 180 krzywej Kocha. Zmodyfikować tak program z poprzedniego zadania, aby rysował tę krzywa. Poniżej pokazana jest tylko przykładowa losowa Krzywa Kocha. Przy każdym kolejnym uruchomieniu programu jej wyglad będzie inny.

49 Scratch - algorytmy Zadanie 25 a) Wyznacz długość krzywej Kocha na 1-szym, 2-gim i k-tym etapie jej rysowania. Jaka jest długość krzywej Kocha jako figury fraktalnej? b) W oparciu o algorytm rysujacy krzywa Kocha narysuj płatek Kocha. c) Jaki jest obwód płatka Kocha? Czy pole płatka Kocha jest ograniczone?

50 Scratch - algorytmy Zadanie 25 a) Wyznacz długość krzywej Kocha na 1-szym, 2-gim i k-tym etapie jej rysowania. Jaka jest długość krzywej Kocha jako figury fraktalnej? b) W oparciu o algorytm rysujacy krzywa Kocha narysuj płatek Kocha. c) Jaki jest obwód płatka Kocha? Czy pole płatka Kocha jest ograniczone?

51 Scratch - algorytmy Zadanie 25 a) Wyznacz długość krzywej Kocha na 1-szym, 2-gim i k-tym etapie jej rysowania. Jaka jest długość krzywej Kocha jako figury fraktalnej? b) W oparciu o algorytm rysujacy krzywa Kocha narysuj płatek Kocha. c) Jaki jest obwód płatka Kocha? Czy pole płatka Kocha jest ograniczone?

52 L-systemy i grafika żółwia Zadanie Napisać L-system dla krzywej Peano. Napisać program rysujacy tę krzywa w Scratchu.

53 Scratch - algorytmy Innym ciekawym przykładem fraktala jest drzewo binarne. Na poniższym rysunku pokazano kolejne kroki jego rysowania.

54 L-systemy i grafika żółwia [ - oznacza poczatek rozgałęzienia ] - oznacza koniec rozgałęzienia X - oznaczaj cy rozgałęzienie L-system: drzewo Aksjomat: X Reguły postępowania: Parametr: δ = 22 F F X F[+X][ X] + +

55 L-systemy i grafika żółwia Zadanie 26 Za pomoca L-systemu zaprogramować rysowanie drzewa w programie Scratch. Zadanie 27 Zmodyfikować program z poprzedniego zadania, aby rysował drzewo losowe w ten sposób, że losowany jest kat δ = 10, δ = 30 lub δ = 60. Każdy z tych katów może być wylosowany z prawdopodobieństwem 1/3. Uruchom kilka razy program za każdym razem wybierajac etap 6 i długość pnia 50.

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

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

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

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Temat: Technologia informacyjna a informatyka 1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Technologia informacyjna (ang.) Information Technology, IT jedna

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

Zapisywanie w wybranej notacji algorytmów z warunkami i iteracyjnych

Zapisywanie w wybranej notacji algorytmów z warunkami i iteracyjnych Temat 2. Zapisywanie w wybranej notacji algorytmów z warunkami i iteracyjnych Cele edukacyjne Usystematyzowanie podstawowych pojęć: algorytm z warunkami, iteracja, algorytm iteracyjny, zmienna sterująca.

Bardziej szczegółowo

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny ALGORYMY Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu

Bardziej szczegółowo

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności

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

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności

Bardziej szczegółowo

Scenariusz zajęć. Moduł VI. Projekt Gra logiczna zgadywanie liczby

Scenariusz zajęć. Moduł VI. Projekt Gra logiczna zgadywanie liczby Scenariusz zajęć Moduł VI Projekt Gra logiczna zgadywanie liczby Moduł VI Projekt Gra logiczna zgadywanie liczby Cele ogólne: przypomnienie i utrwalenie poznanych wcześniej poleceń i konstrukcji języka

Bardziej szczegółowo

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu danych

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

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

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba Programowanie od pierwszoklasisty do maturzysty Grażyna Koba Krąg trzydziestolecia nauki programowania C++, Java Scratch, Baltie, Logo, Python? 2017? Informatyka SP, GIMN, PG 1987 Elementy informatyki

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

Temat 20. Techniki algorytmiczne

Temat 20. Techniki algorytmiczne Realizacja podstawy programowej 5. 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły opis prostej sytuacji problemowej, analizuje

Bardziej szczegółowo

Programowanie i techniki algorytmiczne

Programowanie i techniki algorytmiczne Temat 2. Programowanie i techniki algorytmiczne Realizacja podstawy programowej 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych 2) formułuje ścisły opis prostej

Bardziej szczegółowo

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja; INSTRUKCJE ITERACYJNE WHILE, DO WHILE, FOR Instrukcje iteracyjne pozwalają powtarzać daną instrukcję programu określoną liczbę razy lub do momentu osiągnięcia określonego skutku. Pętla iteracyjna while

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

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja; INSTRUKCJE ITERACYJNE WHILE, DO WHILE, FOR Instrukcje iteracyjne pozwalają powtarzać daną instrukcję programu określoną liczbę razy lub do momentu osiągnięcia określonego skutku. Pętla iteracyjna while

Bardziej szczegółowo

Sposoby przedstawiania algorytmów

Sposoby przedstawiania algorytmów Temat 1. Sposoby przedstawiania algorytmów Realizacja podstawy programowej 5. 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły

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

Algorytmika i programowanie

Algorytmika i programowanie Grażyna Koba Algorytmika i programowanie Programowanie w języku Logo materiały dodatkowe do podręcznika Informatyka dla gimnazjum Temat 21-L Programowanie w języku Logo Warto powtórzyć 1. Proste polecenia

Bardziej szczegółowo

I. Podstawy języka C powtórka

I. Podstawy języka C powtórka I. Podstawy języka C powtórka Zadanie 1. Utwórz zmienne a = 730 (typu int), b = 106 (typu long long), c = 123.45 (typu double) Wypisz następujące komunikaty: Dane sa liczby: a = 730, b = 106 i c = 123.45.

Bardziej szczegółowo

Temat 4. Programowanie w języku Scratch

Temat 4. Programowanie w języku Scratch Temat 4. Programowanie w języku Scratch Realizacja podstawy programowej 5. Uczeń: 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły

Bardziej szczegółowo

ZADANIE 1. Ważenie (14 pkt)

ZADANIE 1. Ważenie (14 pkt) ZADANIE 1. Ważenie (14 pkt) Danych jest n przedmiotów o niewielkich gabarytach i różnych wagach. Jest też do dyspozycji waga z dwiema szalkami, ale nie ma odważników. Kładąc na wadze przedmioty a i b,

Bardziej szczegółowo

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: 1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: * Jan Kowalski * * ul. Zana 31 * 3. Zadeklaruj zmienne przechowujące

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

1 Wprowadzenie do algorytmiki

1 Wprowadzenie do algorytmiki Teoretyczne podstawy informatyki - ćwiczenia: Prowadzący: dr inż. Dariusz W Brzeziński 1 Wprowadzenie do algorytmiki 1.1 Algorytm 1. Skończony, uporządkowany ciąg precyzyjnie i zrozumiale opisanych czynności

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

PRÓBNY EGZAMIN MATURALNY

PRÓBNY EGZAMIN MATURALNY PRÓBNY EGZAMIN MATURALNY Z MATEMATYKI ZESTAW PRZYGOTOWANY PRZEZ SERWIS WWW.ZADANIA.INFO POZIOM PODSTAWOWY 3 KWIETNIA 016 CZAS PRACY: 170 MINUT 1 Zadania zamknięte ZADANIE 1 (1 PKT) Liczba 3 7 48 jest równa

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

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny Klasa 2 INFORMATYKA dla szkół ponadgimnazjalnych zakres rozszerzony Założone osiągnięcia ucznia wymagania edukacyjne na poszczególne oceny Algorytmy 2 3 4 5 6 Wie, co to jest algorytm. Wymienia przykłady

Bardziej szczegółowo

Warsztaty komputerowe

Warsztaty komputerowe Warsztaty komputerowe Temat: Programowanie w LOGO KOMENIUSZ - grafika żółwia Warsztaty komputerowe - grafika żółwia 1 Wprowadzenie teoretyczne Programowanie w LOGO KOMENIUSZ grafika żółwia Programowanie

Bardziej szczegółowo

Gimnazjum w Tęgoborzy - Algorytmika Strona 1 z 22 mgr Zofia Czech

Gimnazjum w Tęgoborzy - Algorytmika Strona 1 z 22 mgr Zofia Czech ALGORYMY Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu

Bardziej szczegółowo

W szkole podstawowej materiał przedstawiony powinien być w następującej kolejności:

W szkole podstawowej materiał przedstawiony powinien być w następującej kolejności: Jak uczyć trudnych tematów - algorytmizacja i programowanie Wydaje się, że najtrudniejszym zagadnieniem zarówno dla ucznia, jaki i nauczyciela w edukacji informatycznej są tematy dotyczące algorytmizacji

Bardziej szczegółowo

2.8. Algorytmy, schematy, programy

2.8. Algorytmy, schematy, programy https://app.wsipnet.pl/podreczniki/strona/38766 2.8. Algorytmy, schematy, programy DOWIESZ SIĘ co oznaczają pojęcia: algorytm, schemat blokowy, język programowania, jakie są sposoby obliczania największego

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

Wprowadzenie do algorytmiki

Wprowadzenie do algorytmiki Wprowadzenie do algorytmiki Pojecie algorytmu Powszechnie przyjmuje się, że algorytm jest opisem krok po kroku rozwiązania postawionego problemu lub sposób osiągnięcia jakiegoś celu. Wywodzi się z matematyki

Bardziej szczegółowo

ALGORYTMY. Polecenia Skrót Znaczenie Działanie Przykład pż

ALGORYTMY. Polecenia Skrót Znaczenie Działanie Przykład pż ALGORYTMY 1. Temat: ALGORYTMICZNE ROZWIĄZYWANIE PROBLEMÓW POWTÓRZENIE I UZUPEŁNIENIE Notatka: Programowanie (tworzenie programu) rozpoczyna się od ułożenia algorytmu, według którego będzie działał program,

Bardziej szczegółowo

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Pzetestuj działanie pętli while i do...while na poniższym przykładzie: Pzetestuj działanie pętli while i do...while na poniższym przykładzie: Zadania pętla while i do...while: 1. Napisz program, który wczytuje od użytkownika liczbę całkowitą, dopóki podana liczba jest mniejsza

Bardziej szczegółowo

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 INFORMATYKA W SZKOLE Dr inż. Grażyna KRUPIŃSKA grazyna@fis.agh.edu.pl D-10 pokój 227 Podyplomowe Studia Pedagogiczne 2 Algorytmy Nazwa algorytm wywodzi się od nazwiska perskiego matematyka Muhamed ibn

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

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE V

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE V WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE V OCENA ŚRÓDROCZNA: DOPUSZCZAJĄCY uczeń potrafi: zapisywać i odczytywać liczby w dziesiątkowym

Bardziej szczegółowo

Lekcja 3: Pierwsze kroki z Pythonem. Pętle

Lekcja 3: Pierwsze kroki z Pythonem. Pętle #SuperKoderzy www.superkoderzy.pl Mikrobitowcy Autorzy: Filip Kłębczyk Lekcja 3: Pierwsze kroki z Pythonem. Pętle Podczas lekcji uczniowie zapoznają się z dwoma rodzajami pętli - for i while - analizując

Bardziej szczegółowo

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony. Iteracje Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony. Iteracja inaczej zwana jest pętlą i oznacza wielokrotne wykonywanie instrukcji. Iteracje

Bardziej szczegółowo

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki. 1. Podaj definicję informatyki. 2. W jaki sposób można definiować informatykę? 3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki. 4. Co to jest algorytm? 5. Podaj neumanowską architekturę

Bardziej szczegółowo

Temat 21. Programowanie w języku Scratch

Temat 21. Programowanie w języku Scratch Realizacja podstawy programowej 5. 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły opis prostej sytuacji problemowej, analizuje

Bardziej szczegółowo

SPRAWOZDANIE Z ZAJĘĆ WYRÓWNAWCZYCH Z MATEMATYKI DLA KLAS IV-VII

SPRAWOZDANIE Z ZAJĘĆ WYRÓWNAWCZYCH Z MATEMATYKI DLA KLAS IV-VII Tytuł projektu: Lokata w dziecięce umysły Zadanie nr 3 : Zajęcia wyrównawcze z matematyki dla klas IV-VII Imię i nazwisko osoby prowadzącej zajęcia: Dorota Siejkowska SPRAWOZDANIE Z ZAJĘĆ WYRÓWNAWCZYCH

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

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10). Wprowadzenie do inżynierii przetwarzania informacji. Ćwiczenie 1. Systemy liczbowe Cel dydaktyczny: Poznanie zasad reprezentacji liczb w systemach pozycyjnych o różnych podstawach. Kodowanie liczb dziesiętnych

Bardziej szczegółowo

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

Obrazy rekurencyjne. Zastosowanie rekurencji w algorytmice. AUTOR: Martin Śniegoń Obrazy rekurencyjne Zastosowanie rekurencji w algorytmice AUTOR: Martin Śniegoń Zdolność procedury/funkcji do wywoływania samej siebie Podstawowa i jedna z najważniejszych technik programistycznych Umożliwia

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

Konkursy w województwie podkarpackim w roku szkolnym 2013/2014

Konkursy w województwie podkarpackim w roku szkolnym 2013/2014 ... Pieczątka Organizatora... Tu wpisz swój Kod KONKURS PRZEDMIOTOWY Z INFORMATYKI DLA UCZNIÓW GIMNAZJUM ETAP WOJEWÓDZKI Drogi uczniu, Witaj na III etapie konkursu informatycznego. Przeczytaj uważnie instrukcję

Bardziej szczegółowo

KONKURS PRZEDMIOTOWY Z MATEMATYKI Finał 12 marca 2009 r.

KONKURS PRZEDMIOTOWY Z MATEMATYKI Finał 12 marca 2009 r. KOD Nr zad. 1 2 3 4 5 6 7 8 9 10 11 12 Razem Max liczba pkt. 3 3 3 3 3 3 3 3 4 3 3 6 40 Liczba pkt. Kuratorium Oświaty w Katowicach KONKURS PRZEDMIOTOWY Z MATEMATYKI Finał 12 marca 2009 r. Przeczytaj uważnie

Bardziej szczegółowo

ALGORYTMY MATEMATYCZNE Ćwiczenie 1 Na podstawie schematu blokowego pewnego algorytmu (rys 1), napisz listę kroków tego algorytmu:

ALGORYTMY MATEMATYCZNE Ćwiczenie 1 Na podstawie schematu blokowego pewnego algorytmu (rys 1), napisz listę kroków tego algorytmu: ALGORYTMY MATEMATYCZNE Ćwiczenie 1 Na podstawie schematu blokowego pewnego algorytmu (rys 1), napisz listę kroków tego algorytmu: Rys1 Ćwiczenie 2 Podaj jaki ciąg znaków zostanie wypisany po wykonaniu

Bardziej szczegółowo

KARTA PRACY UCZNIA. Klasa II

KARTA PRACY UCZNIA. Klasa II Dobrze widzi się tylko sercem. Najważniejsze jest niewidoczne dla oczu. KARTA PRACY UCZNIA Klasa II Temat: Budowanie schematu blokowego realizującego prosty algorytm. Czynności: 1. Uruchom komputer, a

Bardziej szczegółowo

Poprawność semantyczna

Poprawność semantyczna Poprawność składniowa Poprawność semantyczna Poprawność algorytmu Wypisywanie zdań z języka poprawnych składniowo Poprawne wartościowanie zdań języka, np. w języku programowania skutki wystąpienia wyróżnionych

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

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

GIMNAZJALISTO, ZRÓB TO SAM PROGRAMOWANIE W SCRATCHU

GIMNAZJALISTO, ZRÓB TO SAM PROGRAMOWANIE W SCRATCHU GIMNAZJALISTO, ZRÓB TO SAM PROGRAMOWANIE W SCRATCHU Iwona Krajewska-Kranas, Witold Kranas Wydawnictwa Szkolne i Pedagogiczne ika.kranas@gmail.com, witek.kranas@gmail.com Abstract. The main goal of this

Bardziej szczegółowo

do instrukcja while (wyrażenie);

do instrukcja while (wyrażenie); Instrukcje pętli -ćwiczenia Instrukcja while Pętla while (póki) powoduje powtarzanie zawartej w niej sekwencji instrukcji tak długo, jak długo zaczynające pętlę wyrażenie pozostaje prawdziwe. while ( wyrażenie

Bardziej szczegółowo

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0, 2 Arytmetyka Niech b = d r d r 1 d 1 d 0 będzie zapisem liczby w systemie dwójkowym Zamiana zapisu liczby b na system dziesiętny odbywa się poprzez wykonanie dodawania d r 2 r + d r 1 2 r 1 d 1 2 1 + d

Bardziej szczegółowo

Programowanie w środowisku Baltie

Programowanie w środowisku Baltie Temat 3. Programowanie w środowisku Baltie Realizacja podstawy programowej 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych 2) formułuje ścisły opis prostej

Bardziej szczegółowo

Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji.

Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji. Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji. Maria Górska 9 stycznia 2010 1 Spis treści 1 Pojęcie algorytmu 3 2 Sposób

Bardziej szczegółowo

wagi cyfry 7 5 8 2 pozycje 3 2 1 0

wagi cyfry 7 5 8 2 pozycje 3 2 1 0 Wartość liczby pozycyjnej System dziesiętny W rozdziale opiszemy pozycyjne systemy liczbowe. Wiedza ta znakomicie ułatwi nam zrozumienie sposobu przechowywania liczb w pamięci komputerów. Na pierwszy ogień

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

Temat 5. Programowanie w języku Logo

Temat 5. Programowanie w języku Logo Temat 5. Programowanie w języku Logo Realizacja podstawy programowej 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych 2) formułuje ścisły opis prostej sytuacji

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA POSZCZEGÓLNYCH OCEN Z MATEMATYKI W KLASIE VI

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA POSZCZEGÓLNYCH OCEN Z MATEMATYKI W KLASIE VI WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA POSZCZEGÓLNYCH OCEN Z MATEMATYKI W KLASIE VI OCENA ŚRÓDROCZNA: NIEDOSTATECZNY ocenę niedostateczny otrzymuje uczeń, który nie spełnia poniższych wymagań edukacyjnych

Bardziej szczegółowo

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for. Zadania do wykonania Rozwiązując poniższe zadania użyj pętlę for. 1. apisz program, który przesuwa w prawo o dwie pozycje zawartość tablicy 10-cio elementowej liczb całkowitych tzn. element t[i] dla i=2,..,9

Bardziej szczegółowo

Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej

Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej Ocenę dopuszczającą otrzymuje uczeń, który: rozumie rozszerzenie osi liczbowej na liczby ujemne umie porównywać liczby wymierne,

Bardziej szczegółowo

Algorytm. Krótka historia algorytmów

Algorytm. Krótka historia algorytmów Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne

Bardziej szczegółowo

KONKURS MATEMATYCZNY DLA UCZNIÓW GIMNAZJUM. Etap Wojewódzki

KONKURS MATEMATYCZNY DLA UCZNIÓW GIMNAZJUM. Etap Wojewódzki Kod ucznia - - pieczątka WKK Dzień Miesiąc Rok DATA URODZENIA UCZNIA KONKURS MATEMATYCZNY DLA UCZNIÓW GIMNAZJUM Etap Wojewódzki Drogi Uczniu, witaj na III etapie konkursu matematycznego. Przeczytaj uważnie

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI W KLASIE 8 SZKOŁY PODSTAWOWEJ

WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI W KLASIE 8 SZKOŁY PODSTAWOWEJ WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI W KLASIE 8 SZKOŁY PODSTAWOWEJ 1) ocenę celującą otrzymuje uczeń, który spełnił wymagania na ocenę bardzo dobrą oraz: - umie zapisać i odczytać w

Bardziej szczegółowo

EGZAMIN ÓSMOKLASISTY od roku szkolnego 2018/2019

EGZAMIN ÓSMOKLASISTY od roku szkolnego 2018/2019 EGZAMIN ÓSMOKLASISTY od roku szkolnego 2018/2019 MATEMATYKA rozwiązań zadań z arkusza egzaminacyjnego OMAP-800 KWIECIEŃ 2019 Centralna Komisja Egzaminacyjna Warszawa Zadanie 1. (0 3) Podstawa programowa

Bardziej szczegółowo

Jednoznaczność rozkładu na czynniki pierwsze I

Jednoznaczność rozkładu na czynniki pierwsze I Jednoznaczność rozkładu na czynniki pierwsze I 1. W Biwerlandii w obiegu są monety o nominałach 5 eciepecie i 8 eciepecie. Jaką najmniejszą (dodatnią) kwotę można zapłacić za zakupy, jeżeli sprzedawca

Bardziej szczegółowo

Warunki logiczne instrukcja if

Warunki logiczne instrukcja if Warunki logiczne instrukcja if Prowadzący: Łukasz Dunaj, strona kółka: atinea.pl/kolko 1. Wejdź na stronę kółka, uruchom edytor i wpisz: use console; def test::main() { var y; y = 1; while (y

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

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI STYCZEŃ POZIOM ROZSZERZONY Część I

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI STYCZEŃ POZIOM ROZSZERZONY Część I Organizatorzy: Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki, Oddział Kujawsko-Pomorski Polskiego Towarzystwa Informatycznego, Ośrodek Doskonalenia Nauczycieli w Poznaniu, Centrum

Bardziej szczegółowo

4. Funkcje. Przykłady

4. Funkcje. Przykłady 4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni

Bardziej szczegółowo

Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów. Etap szkolny 4 listopada 2015 Rozwiązania zadań

Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów. Etap szkolny 4 listopada 2015 Rozwiązania zadań Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów. Etap szkolny 4 listopada 2015 Rozwiązania zadań ZADANIA ZAMKNIĘTE Zadanie 1. (1 punkt) Gwiazda sześcioramienna ma wszystkie boki równe i składa się

Bardziej szczegółowo

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nazwa implementacji: Nauka języka Python wyrażenia warunkowe Autor: Piotr Fiorek Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nasz kalkulator umie już liczyć, ale potrafi przeprowadzać

Bardziej szczegółowo

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia L.P. DZIAŁ Z PODRĘCZNIKA NaCoBeZu kryteria sukcesu w języku ucznia 1. LICZBY 1. Znam pojęcie liczby naturalne, całkowite, wymierne, dodatnie, ujemne, niedodatnie, odwrotne, przeciwne. 2. Potrafię zaznaczyć

Bardziej szczegółowo

Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2016/2017 Ćwiczenia nr 7

Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2016/2017 Ćwiczenia nr 7 Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2016/2017 Ćwiczenia nr 7 Zadanie domowe Zadanie domowe Liczby naturalne (Sztuka nauczania matematyki w szkole podstawowej i gimnazjum,

Bardziej szczegółowo

Wymagania edukacyjne z matematyki dla klasy VII

Wymagania edukacyjne z matematyki dla klasy VII Wymagania edukacyjne z matematyki dla klasy VII Szkoły Podstawowej nr 100 w Krakowie Na podstawie programu Matematyka z plusem Na ocenę dopuszczającą Uczeń: rozumie rozszerzenie osi liczbowej na liczby

Bardziej szczegółowo

WIELOKĄTY FOREMNE I ICH PRZEKĄTNE

WIELOKĄTY FOREMNE I ICH PRZEKĄTNE WIELOKĄTY FOREMNE I ICH PRZEKĄTNE Krzysztof Lisiecki Kl. V a SP nr 6 im. Unii Europejskiej w Kłodzku Praca pod kierunkiem: mgr Moniki Chosińskiej Spis treści Lp. Tytuł Str. 1. Wstęp. 2 2. Pojęcia używane

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

Czas pracy: 60 minut

Czas pracy: 60 minut EGZAMIN MATURALNY OD ROKU SZKOLNEGO 2014/2015 INFORMATYKA POZIOM ROZSZERZONY ARKUSZ I PRZYKŁADOWY ZESTAW ZADAŃ DLA OSÓB SŁABOSŁYSZĄCYCH (A3) WYBRANE:... (środowisko)... (kompilator)... (program użytkowy)

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

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

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

Języki programowania zasady ich tworzenia

Języki programowania zasady ich tworzenia Strona 1 z 18 Języki programowania zasady ich tworzenia Definicja 5 Językami formalnymi nazywamy każdy system, w którym stosując dobrze określone reguły należące do ustalonego zbioru, możemy uzyskać wszystkie

Bardziej szczegółowo

Zadanie 1. Suma silni (11 pkt)

Zadanie 1. Suma silni (11 pkt) 2 Egzamin maturalny z informatyki Zadanie 1. Suma silni (11 pkt) Pojęcie silni dla liczb naturalnych większych od zera definiuje się następująco: 1 dla n = 1 n! = ( n 1! ) n dla n> 1 Rozpatrzmy funkcję

Bardziej szczegółowo

5. Rekurencja. Przykłady

5. Rekurencja. Przykłady 5. Rekurencja Uwaga! W tym rozdziale nie są omówione żadne nowe konstrukcje języka C++. Omówiona jest za to technika wykorzystująca funkcje, która pozwala na rozwiązanie pewnych nowych rodzajów zadań.

Bardziej szczegółowo

Programowanie w języku C++ Grażyna Koba

Programowanie w języku C++ Grażyna Koba Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad

Bardziej szczegółowo

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba) 1. Liczby wymierne. - wartość bezwzględna liczby. dla 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba) - dla < 0 ( wartością bezwzględną liczby ujemnej jest liczba do niej przeciwna) W interpretacji

Bardziej szczegółowo

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] 3-2 5 8 12-4 -26 12 45-76

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] 3-2 5 8 12-4 -26 12 45-76 . p. 1 Algorytmem nazywa się poddający się interpretacji skończony zbiór instrukcji wykonania zadania mającego określony stan końcowy dla każdego zestawu danych wejściowych W algorytmach mogą występować

Bardziej szczegółowo

Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2018/2019 Ćwiczenia nr 7

Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2018/2019 Ćwiczenia nr 7 Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2018/2019 Ćwiczenia nr 7 Zadanie domowe 0 = 4 4 + 4 4, 2 = 4: 4 + 4: 4, 3 = 4 4: 4 4, 4 = 4 4 : 4 + 4, 6 = 4 + (4 + 4): 4, 7 =

Bardziej szczegółowo