Zmiany

Skocz do: nawigacji, wyszukiwania

Moduł 5

Dodane 5690 bajtów, 18:37, 7 lip 2015
==Etapy realizacji==
 
===Omówienie rozwiązania zadania dodatkowego z modułu IV===
''Na początku zajęć należy przypomnieć, co miało zostać przygotowane przez uczniów między zajęciami. Zapraszamy chętnego ucznia do zaprezentowania swojego rozwiązania. Dyskutujemy z uczniami, czy ktoś miał inny sposób rozwiązania. Omawiamy rozwiązania (chwaląc każde poprawne rozwiązania poszczególnych zadań).''
''Jeśli nie było zadań domowych, to zaczynamy od powtórzenia najważniejszych zagadnień z poprzedniego modułu. Pytamy także, o wątpliwości do ewentualnych własnych projektów uczniów. Jeśli ktoś chce się czymś pochwalić – pozwólmy mu na to.''
 
===Zaprojektowanie i implementacja gry polegającej na odbijaniu piłeczki paletką sterowaną przez gracza za pomocą myszy komputerowej ===
Szkicujemy na tablicy rysunek, obok którego będziemy mogli rozpisać algorytmy działania poszczególnych duszków oraz spisać, co trzeba zrobić, by nasza gra zaczęła działać.
[[Plik:Modul_5_1.png|center]]
'''Wskazówka''' ''W proponowanym scenariusz przewidujemy, że paletka znajduje się na dole ekranu, jednakuczniowie mogą mieć inną koncepcję – np[[Plik:M_5_14. umieszczenia jej po lewej stronie i poruszanej góra-dół.''''Powinniśmy się dostosować do ich pomysłów, tak by mieli poczucie, że to oni wymyślili sposóbdziałania, który zaimplementują w środowisku Scratch.''JPG|center]]
'''Zadajemy pytanie: ''' Czym powinna być piłka oraz paletka?
''Uczniowie prawdopodobnie dość szybko odpowiedzą, że zarówno paletka jak i piłka powinny być duszkami, którymi będziemy mogli sterować. W razie potrzeby trzeba ich naprowadzić na tę odpowiedź, uzasadniając taki, a nie inny wybór.''
Jak paletka powinna się poruszać? Jak nią można prosto sterować za pomocą myszy komputerowej?
''Np. na linii, gdzie będzie się poruszać. Pytanie dodatkowe, co musimy na pewno ustawić –współrzędną Y. Na jaką wartość – odpowiadającą dolnej części ekranu – np. -150. WspółrzędnaX może być dowolna lub ustawiona na 0, jeżeli uczniowie dojdą do takiego wniosku.''
''Ustalenia warto zanotować na rysunku schematycznym na tablicy.''
''Odpowiedź na drugie pytanie może być nieco bardziej skomplikowana. Uczniowie powinnijednak pamiętać z modułu drugiego oraz trzeciego, w jaki sposób można sterować postaciąprzy użyciu myszy. Warto poddać dyskusji, jak paletka powinna się poruszać (tylko lewo –prawo, jeśli przyjęliśmy planszę jak w przykładzie). Zadajemy wobec tego pytanie, którawspółrzędna będzie dla paletki stała (Y), a która będzie się zmieniała (X). Prosimy, by odnaleźliklocek, który najszybciej pozwoli przemieścić paletkę zgodnie z przemieszczeniem myszykomputerowej. Uczniowie powinni odnaleźć dwa klocki, które będą dobrze współpracowały:''
'''Ustaw x na <0>''' oraz '''x myszy.'''
''– Zawsze''
''* Ustaw x na <x myszy>''
'''Zadanie: '''Prosimy, by uczniowie dodali odpowiedni skrypt dla Paletki, a następnie przetestowali, czy paletka porusza się w pożądany sposób. Dajemy na to zadanie trzy – cztery minuty.
'''Zadajemy kolejno pytania prowadzące do określania wszystkich istotnych punktów algorytmu działania duszka Piłki (ustalenia notujemy na tablicy, np. na schematycznym rysunku):'''
1. # Gdzie powinna zostać umieszczona piłka po uruchomieniu programu?# Jak powinna być skierowana?# Jak możemy sterować prędkością piłki, z jaką prędkością powinna się poruszać?# Co powinno się stać, gdy piłka dotrze do krawędzi ekranu?# Co się powinno stać, gdy piłka dotknie paletki?# Co się powinno stać, gdy piłka nie dotknie paletki i przeleci za nią?
2. Jak powinna ''Odpowiedzi mogą być skierowana?różne. Powinniśmy je zebrać, omówić i zaproponować jakieś dane wyjściowe. Na przykład:''
3* ''najlepiej, żeby piłka wystartowała ze środka ekranu (Y=0). Jak możemy sterować prędkością Wartość początkowa X może być dowolna (np. wylosowana z przedziału -200 a 200),''* ''ustawienie kąta kierunku piłkina 45 stopni, z jaką prędkością powinna czyli w prawo do góry, pozwoli graczowi zorientować się poruszać?, jak sterować paletką. Warto w tym miejscu przypomnieć uczniom kierunki – kąt 0 stopni to kierunek do góry, potem poruszamy się zgodnie ze wskazówkami zegara, kąt 90 stopni to kierunek w prawo. Więc kąt 45 stopni skieruje piłkę do góry w prawo. Omawiając wartości poszczególnych kątów można skorzystać z poniższego rysunku.''
4[[Plik:M_5_4. Co powinno się stać, gdy piłka dotrze do krawędzi ekranu?JPG|center]]
5[[Plik:M_5_15. Co się powinno stać, gdy piłka dotknie paletki?JPG|center]]
6* ''ustawienie prędkości piłki na 5 kroków, co zapewni na początek niezbyt dużą prędkość. Co Od niej bowiem zależeć będzie stopień trudności gry. Później będzie można poeksperymentować z tym parametrem,''* ''piłka powinna się powinno staćodbić od ściany (wyjątek stanowić będzie krawędź dolna, gdy bo do niej piłka nie dotknie powinna dotrzeć),''* ''piłka powinna się odbić od paletki i przeleci za nią?wydając dźwięk odbicia,''* ''gdy piłka ominie paletkę, gra powinna się zakończyć – np. wyświetli napis Koniec Gry!''
''Odpowiedzi mogą być różne. Powinniśmy je zebrać, omówić i zaproponować jakieś dane wyjściowe. Na przykład:''
''- najlepiej, żeby piłka wystartowała ze środka ekranu (Y=0). Wartość początkowa X może być dowolna (np. wylosowana z przedziału -200 a 200),''
''– ustawienie kąta kierunku piłki na 45 stopni, czyli w prawo do góry, pozwoli graczowi zorientować się, jak sterować paletką. Warto w tym miejscu przypomnieć uczniom kierunki – kąt 0 stopni to kierunek do góry, potem poruszamy się zgodnie ze wskazówkami zegara, kąt 90 stopni to kierunek w prawo. Więc kąt 45 stopni skieruje piłkę do góry w prawo. Omawiając wartości poszczególnych kątów można skorzystać z poniższego rysunku.''
[[Plik'''Zadajemy pytanie:M_5_4'''Które z wypisanych czynności umiemy oprogramować? Co budzi nasze wątpliwości? Wspólnie szukamy klocków pomocnych w rozwiązaniu konkretnych problemów.JPG]]
''Uczniowie poznali większość klocków niezbędnych do zaprogramowania opisanej gry. Z nowości może im się przydać kilka klocków dotyczących ruchu – w szczególności:''
 
* ''odbijania od ścian,''
 
[[Plik:M_5_5.JPG]]
 
* ''sprawdzenia, w jakim kierunku aktualnie podąża piłka,''
 
[[Plik:M_5_6.JPG]]
 
* ''należy przedyskutować z uczniami, w jaki sposób można się zorientować, że piłka minęła paletkę.Możemy naprowadzić uczniów poprzez zadanie pytania, co jesteśmy w stanie kontrolować dla piłki. Dojdą do odpowiedzi, że m. in. współrzędne X oraz Y. Dalej w razie potrzeby możemy zadać pytanie, jaka jest wartość współrzędnych dla paletki. X jest zmienne, zaś Y określa na jakiej wysokości sceny paletka się porusza. Wcześniej ustaliliśmy, że wartość Y dla paletki wynosi -150.Więc jeśli współrzędna Y piłki ma wartość mniejszą niż -150, to znaczy, że piłka minęła paletkę.''
 
 
'''Zadanie dla uczniów: '''Prosimy uczniów, by zastanowili się i rozpisali (samodzielnie) na kartce
papieru algorytm (przepis) działania duszka Piłka. Dajemy na to kilka minut.
 
Wraz z uczniami spisujemy algorytm na tablicy przy okazji wyjaśniając wątpliwości.
 
 
<span style="color: red">'''''Uwaga !!!''''' </span>
 
<span style="color: red">''Jeśli większość uczniów mniej więcej prawidłowo rozpisała swoje algorytmy, to warto pozwolić
uczniom na ich realizację i dopiero w trakcie, indywidualnie lub grupowo, rozwiązywać problemy.''
''Przedstawiony niżej algorytm zawiera instrukcję '''Jeżeli – w przeciwnym razie'''.''
''Rozwiązanie zawierające dwie instrukcje '''Jeżeli''' zamiast pojedynczej '''Jeżeli – w przeciwnym razie'''
''jest również prawidłowe. Warto jednak pokazać uczniom możliwość zastąpienia dwóch instrukcji jedną.''</span>
 
 
'''Przykładowy algorytm dla duszka Piłka:'''
 
* ''kiedy kliknięto zieloną flagę,''
* ''ustaw piłkę w połowie wysokości Sceny (Y=0), losując współrzędną X,''
* ''ustaw kierunek piłki na 45 stopni (w prawo do góry),''
* ''zawsze:''
** ''przesuń piłkę o 5 kroków,''
** ''jeżeli dotyka brzegu sceny, odbij,''
** ''jeżeli dotyka paletki:''
*** '' zagraj dźwięk odbicia,''
*** ''jeżeli kierunek to: prawo w dół (kierunek=135 stopni)''
**** ''obróć o 90 stopni w lewo''
*** ''w przeciwnym wypadku''
**** ''obróć o 90 stopni w prawo''[[Plik:M_5_18.JPG|center]]
** ''jeżeli współrzędna Y < -150, to:''
*** ''powiedz „Koniec gry”,''
*** ''Zakończ skrypt.''
 
 
'''Zadanie: '''Prosimy uczniów, aby stworzyli skrypt dla duszka Piłka, według opracowanego wspólnie
algorytmu i go przetestowali.
 
''Uczniowie pracują samodzielnie. Podczas zajęć podglądamy postępy i w razie potrzeby pomagamy indywidualnie. Uczniów, którzy skończą szybciej możemy poprosić, by pomogli słabszym (o ile potrafią wytłumaczyć, gdzie popełnione zostały błędy, zamiast wykonać za kolegów zadanie) lub zadajemy im zadania z listy dodatkowej.''
 
'''Przykładowy skrypt piłki może wyglądać w następujący sposób:'''
 
[[Plik:M_5_8.JPG]]
 
[[Plik:M_5_16.JPG|center]]
 
 
===Modyfikacje programu – dodanie planszy Koniec gry===
 
'''Czas na realizację tej części: ok. 15 minut'''
'''Wskazówka'''
''Warto z uczniami przedyskutować, a później również przetestować, co by się stało, gdy zmieni się kątstartowy, podobnie jak kąt odbicia piłkiTą część można zrealizować w inny sposób. Dyskusję Na początku zajęć można przeprowadzić na tym etapieomówić prosty przykład, jeśli uczniowiezaproponują inne rozwiązania lub na etapie testowania ilustrujący jak używać bloczków (gdy uczniowie będą mogli od razu sprawdzićswoje przewidywaniaklocków)nadawania i reakcji na nadane komunikaty oraz ukrywania i pokazywania duszków. Następnie podczas omawiania zasad działania gry wpleść zmianę planszy.''
''– ustawienie prędkości piłki na 5 krokówRozmawiamy z uczniami, co zapewni na początek niezbyt dużą prędkośćjak im się podoba działanie programu.Od niej bowiem zależeć będzie stopień trudności Zapewne zauważą, że napis kończący grę właściwie nie jest widoczny dla gracza, gdyż bardzo szybko znika z ekranu. Proponujemy wprowadzenie zmiany. W większości gier plansza kończąca grę jest inna niż podczas gry. Później będzie możnapoeksperymentować Proponujemy następującą modyfikację:# Stworzenie dodatkowego tła dla sceny z tym parametremdużym napisem KONIEC GRY. Proponujemy,by uczniowie nadali mu nazwę '''Zakończenie'– piłka powinna się odbić od ściany (wyjątek stanowić będzie krawędź dolna''. Jednocześnie pierwsze tło sceny mogą nazwać '''Gra'''.#Proponujemy wykorzystać nadawanie i odbieranie komunikatów. Prosimy, bo do niej piłkaby uczniowie odnaleźli odpowiednie klocki[[Plik:M_5_10.JPG]]nie powinna dotrzeć)#Prosimy,by wprowadzili następujące modyfikacje:'''W skrypcie piłki'– piłka powinna się odbić od paletki wydając dźwięk odbicia,''* dodanie klocka ''– gdy piłka ominie paletkę'pokaż''' działającego po uruchomieniu programu zieloną flagą, gra powinna się zakończyć – np. wyświetli * zmodyfikowanie skryptu w taki sposób, by zamiast wyświetlać napis '''Koniec Gry!gry''':** nadany został komunikat o nazwie '''koniec gry''',** ukryty został duszek Piłka.
'''Zadajemy pytanie: W skryptach paletki'''Które z wypisanych czynności umiemy oprogramować? Co budzi naszewątpliwości? Wspólnie szukamy klocków pomocnych * dodanie skryptu reagującego na odebranie komunikatu '''koniec gry''' ukryciem duszka Paletka* dodanie klocka pokazującego duszka Paletka po uruchomieniu programu zieloną flagą.'''W skryptach sceny'''* ustawienie tła po uruchomieniu programu zieloną flagą na zatytułowane Gra,* dodanie skryptu reagującego w rozwiązaniu konkretnych problemównastępujący sposób na otrzymanie komunikatu '''koniec gry''':** zmiana tła na zatytułowane '''Zakończenie''',** zakończenie działania wszystkich skryptów.
''Uczniowie poznali większość klocków niezbędnych do zaprogramowania opisanej gry.Z nowości może im się przydać kilka klocków dotyczących ruchu – w szczególności'Zadanie:''''* odbijania od ścianProsimy uczniów,''aby dokonali omówionych modyfikacji programu, a następnie goprzetestowali. Dajemy uczniom na to kilka minut.
[[Plik:M_5_5.JPG]]
''* sprawdzenia, w jakim kierunku aktualnie podąża piłka,''Poszczególne skrypty mogą wyglądać następująco:
'''Skrypt piłki:''' [[Plik:M_5_6M_5_11.JPG]] '''Skrypty paletki:''' [[Plik:M_5_12.JPG]] '''Skrypty sceny:''' [[Plik:M_5_13.JPG]]  ===Omówienie zadań dodatkowych oraz do samodzielnego wykonania=== '''Czas na realizację tej części: ok. 15 minut''' [[Plik:M_5_17.JPG|center]] Niżej znajduje się lista proponowanych modyfikacji omówionej gry. W zależności od czasu, który pozostanie po zrealizowaniu wcześniejszych części, można je zrealizować podczas zajęć lub zaproponować do realizacji w domu. Uczniowie sami mogą wybrać z nich te, które chcieliby opracować. Warto wówczas zaprezentować w skrócie rozwiązania na początku następnego modułu, z ich omówieniem. Warto przedstawić różne rozwiązania tego samego problemu zaproponowane przez poszczególnych uczniów.  '''Proponowana lista zadań dodatkowych:'''
* Przyspieszanie gry po każdym odbiciu piłeczki''* Prędkość piłeczki po każdym odbiciu od paletki powinna być powiększana o jeden krok. W tym celu należy przedyskutować z uczniami, w jaki sposób można się zorientować, że piłka minęłautworzyć i wykorzystać zmienną np. Prędkość.''paletkę* Dodanie liczby żyć (np. Możemy naprowadzić uczniów poprzez zadanie pytania, co jesteśmy trzech) dla gracza sterującego paletką''Należy wykorzystać licznik żyć w staniepostaci zmiennej i odpowiednio ją modyfikować w zależności od utraty życia (nie odbicia piłeczki).''kontrolować * Wersja gry dla piłkidwóch graczy, sterowanie dwoma paletkami przy pomocy klawiatury (np. Dojdą do odpowiedzigracz pierwszy klawisze A i Z, że mgracz drugi klawisze K i M). in. współrzędne X oraz Y. Dalej w razieTutaj warto pamiętać o takich modyfikacjach, jak:potrzeby możemy zadać pytanie** ustawienia paletek (wygodniej lewa i prawa strona ekranu), jaka jest wartość współrzędnych dla ** zmiana skryptu piłki (reakcja na dwie paletki. X jest),zmienne** zmiana skryptu piłki (możliwość zwycięstwa pierwszego lub drugiego gracza – wykrywanie wyjścia za pole gry, zaś Y określa na jakiej wysokości sceny w zależności od tego, która paletka się porusza. Wcześniejzostała ominięta przez piłkę),ustaliliśmy** zmiana planszy kończącej, tak by informowała, który gracz wygrał, że wartość Y dla paletki wynosi -150. Więc jeśli współrzędna Y piłki mawartość mniejszą niż -150** dodanie planszy informującej o zasadach gry, to znaczy**dodanie licznika punktów zdobytych/straconych przez danego gracza oraz nowych zasad – np. kto pierwszy straci 5 razy piłkę, że piłka minęła paletkęten przegrywa.''
197
edycji