Zmiany

Sumowanie

Dodane 6247 bajtów, 11:10, 7 lis 2014
[[Category:Scenariusze Scratch]] [[Category:Mistrzowie Kodowania]]'''Materiały stworzone przez Fundację Coder Dojo Polska w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska, objęte licencją CC BY 3.0 PL "Creative Commons Uznanie Autorstwa 3.0 Polska".''' Link do gry: [http://scratch.mit.edu/projects/2543941526090741/Sumowanie] 
== Cel ==
Stworzenie gry polegającej na obliczaniu przez gracza sumy liczb proponowanych przez duszka
'''Edukacja plastyczna'''
* # wypowiada się w wybranych technikach plastycznych na płaszczyźnie i w przestrzeni; posługuje się takimi środkami wyrazu plastycznego, jak: kształt, barwa, faktura;
'''Edukacja matematyczna'''
# w zakresie liczenia i sprawności rachunkowych:#* sprawnie liczy obiekty (dostrzega regularności dziesiątkowego systemu liczenia) zakres do 20.#* wyznacza sumy (dodaje) i różnice (odejmuje), manipulując obiektami lub rachując na zbiorach zastępczych, np.... czekam na punktypalcach; sprawnie dodaje i odejmuje w zakresie do 10, poprawnie zapisuje te działania,
'''Zajęcia komputerowe'''
# wpisuje za pomocą klawiatury litery, cyfry i inne znaki, wyrazy i zdania,
==Jak stworzyć ? ==
<small>Czas na realizację tej części: ok 90 min</small>
=== wprowadzenie ===
<small>Czas na realizację tej części: ok 15 min</small>
 
Proponujemy uczniom stworzenie gry według scenariusza:
# duszek - bohater prosi gracza o obliczenie sumy podanych przez niego losowo wybranych liczb,# następnie poczeka na wpisane przez gracza odpowiedzi, sprawdzi ją i poinformuje nas o tym, czy odpowiedź jest dobra, czy też gracz popełnił błąd.# w przypadku poprawnej lub błędnej odpowiedzinaliczy graczowi punkt,w przypadku błędnej odpowiedzi punktu nie ma.# dodamy w grze możliwość określania zakresu liczb do wyboru dla duszkaduszek - bohater zada np.: 10 pytań i na koniec zabawy poinformuje nas o ilości zdobytych punktów za poprawne odpowiedzi.
Ustalamy co jest nam potrzebne:
# skrypty dla duszka pozwalające mu:
#* wybierać liczby z wskazanego przez nas przedziału liczbowego,
#* sprawdzać podane przez nas wyniki,#* pozwalający naliczać punkty za poprawne odpowiedzi,#* informujący o końcu gry i jej wyniku.
=== tworzenie duszka ===
<small>Czas na realizację tej części: ok 10 min</small>
 
Nasza gra posiadała tylko jednego duszka. Możemy umieścić go w ciekawej scenerii.
Sposoby tworzenia nowego duszka i sceny są dokładnie opisane w scenariuszu '''Cykl życia motyla'''.
==== instrukcje dla duszka ====<small>Czas na realizację tej części: ok 65 min</small>
Zaczniemy od stworzenia skryptu, w którym duszek będzie nas witał i poprosi nas o wyliczenie sumy podanych liczbzaproszał do gry.
[[Plik:Sum5c.png]]
Widok na scenie:
[[Plik:Sum5d.png|300px|]]
Teraz stworzymy zmienne które które będą przechowywały wylosowane liczby, mogą być widziane tylko przez tego duszka.==== wprowadzenie zmiennych ====
[[PlikW pierwszej kolejności zaprogramujemy wybieranie przez duszka liczb w określonym zakresie. W tym celu musimy najpierw wprowadzić zmienne:mm1c'''Liczba a''' i '''Liczba b''', które będą przechowywały wylosowane liczby. Zmienne możemy wytłumaczyć uczniom na zasadzie komody z szufladami. Zmienna '''Liczba a''' - to pierwsza z szuflad, '''Liczba b''' - to druga szuflada. Do każdej szuflady wrzucamy kartoniki z liczbami w ustalonym zakresie np. od 1 do 10. Duszek będzie losował po jednej liczbie z każdej szuflady. Wysuwa szufladę pierwszą '''Liczba a''' i wyciąga kartonik z liczbą, to samo powtarza w przypadku szuflady nazwanej '''Liczba b'''. Po wykonaniu tych czynności duszek prosi nas o podanie sumy wylosowanych na kartonikach liczb.png]]
Teraz wystarczy zrobić zadawanie pytań Zmienną wprowadzamy w kategorii klocków '''dane''' poprzez wybranie opcji ''stwórz nową zmienną''. Musimy zaznaczyć odpowiednią opcję przypisania zmiennej i sprawdzanie odpowiedzizatwierdzić przyciskiem OK.
[[Plik:mm1aokn1a.png]]
Teraz nasz skrypt działa na sztywno zakres obliczeń wynosi od 1 do 20'''Uwaga!:''' Każdą zmienną wprowadzamy oddzielnie. Zmienne te mogą być widziane tylko przez tego duszka, więc odhaczamy zaznaczenia przy nazwach po ich utworzeniu.
Teraz zrobimy żeby można było z trakcie gry zwiększać trudność.
Zaczniemy od stworzenia zmiennej.
Teraz ustawiamy zakresy losowania naszych zmiennych. Wykorzystamy do tego blok [[Plik:Los1.png|losuje w danym zakresie]].Jeśli suma dwóch liczb ma mieścić się w zakresie 20, to każda z tych liczb musi być wybrana z przedziału od 1 do 10, zatem: [[Plik:Sum2.png|dopisanie zmiennym ich zakresów losowania]] ==== pytanie i badanie odpowiedzi ==== Następnie tworzymy skrypty odpowiadające za zadawanie pytania i sprawdzanie odpowiedzi. Musimy połączyć w nich wyświetlany tekst, losowane przez program liczby i wyrażenie arytmetyczne- ''dodawanie''. Użyjemy nowego klocka z kategorii wyrażenia: [[Plik:Sum2a.png|pozwala tworzyć wyrażenie z użyciem zmiennych]]. Dzięki niemu program będzie mógł w wyświetlanym tekście wstawiać losowo wybrane przez siebie liczby: [[Plik:Sum2b.png|zadaje pytanie i czeka na odpowiedź]] Teraz zajmijmy się sprawdzaniem odpowiedzi podanej przez gracza. Program musi obliczyć wyrażenie matematyczne i porównać jego wynik z odpowiedzią wpisaną przez gracza. Następnie stwierdzić czy on jest poprawny czy błędny. Do porównania obliczeń programu i gracza użyjemy klocków z kategorii '''wyrażenia''': [[Plik:Sum2c.png]] i [[Plik:Sum2c1.png]] umożliwiających programowanie działań matematycznych oraz klocka '''kontroli''' [[Plik:Sum4c.png|badanie możliwych odpowiedzi]]- pozwalającego zbadać dwa przypadki odpowiedzi. Użycie ich w skrypcie, w przypadku naszego duszka, będzie następujące: [[Plik:Sum3.png|porównywanie wyników]] Dołączamy reakcję duszka na możliwe odpowiedzi. Jeśli odpowiedź jest poprawna to np.: duszek powie '''super!''', w przypadku błędnej np.: zaproponuje przejście do kolejnego działania, może również zakomunikować błąd jakimś dźwiękiem: [[Plik:Sum4.png|odpowiedzi pojawiające się po sprawdzeniu wyniku działania]] '''Wskazówka:''' W powyższych odpowiedziach możemy zaprezentować graczowi całość rozwiązania np.: '''Super! 8+4=12'''. Wiąże się to jednak z wielokrotnym łączeniem klocków [[Plik:Sum2a.png]].  ==== odgraniczenie ilości pytań w grze ==== Jeżeli przyjmiemy, że w grze będzie ograniczona ilość pytań, np.: 10, to wszystkie omawiane skrypty powinniśmy umieścić w bloku [[Plik:Sum4e.png|powtarzanie skryptów]]. Skrypt będzie wyglądał następująco:  [[Plik:Sum5a.png]] ==== naliczanie punktów ====Do gry możemy wprowadzić licznik punktowania poprawnych odpowiedzi. W tym celu musimy utworzyć nową zmienną '''punkty''' - czyli kolejną szufladę, z której duszek będzie wyjmował punkty za poprawną odpowiedź. Postępujemy analogicznie jak w przypadku tworzenia zmiennych '''Liczba a''' i '''Liczba b'''. Z tą różnicą, że zmienną punkty zostawiamy widoczną na scenie (nie odhaczamy zaznaczenia przy nowo powstałej zmiennej).  [[Plik:Okn1b.png]] Żeby punkty przy każdorazowym uruchomieniu gry naliczały się od początku - po uruchomieniu gry muszą się zerować, blok [[Plik:Sum6.png|zeruje licznik punktów]]. Aby po każdorazowej poprawnej odpowiedzi naliczały się - muszą zwiększać się o 1, blok [[Plik:Sum6a.png|zwiększa licznik punktów o 1]]. Wykorzystując te klocki można dokonać następującej modyfikacji:  [[Plik:Sum5b.png|naliczanie punktów w grze]] Po skończonej rundzie dziesięciu pytań nasz duszek - bohater może poinformować o końcu gry oraz ilości zdobytych punktów. Następnie zakończyć działanie gry. Kolejny raz pomocny będzie blok [[Plik:Sum2a.png]] umożliwiający połączenie wyświetlanego tekstu ze zmienną '''punkty''': [[Plik:Sum6b.png|wyświetla tekst i zapamiętaną wartość zmiennej]] Cały skrypt duszka wygląda następująco: [[Plik:Sum6c.png|cały skrypt duszka]] [[Plik:mm1dSum6d.png|right|przykładowy urywek skryptu na scenie]]
Teraz możemy ustawić przedział.== Co dalej? ==
[[PlikPodstawową grę można zmodyfikować poprzez:mm1e.png]][[Plik:mm1f* animację postaci duszka,* dodanie zmiennej umożliwiającej graczowi określanie zakresu trudności gry (czyli zwiększania lub zmniejszania zakresu liczb do wyboru)* dodanie zmiennej umożliwiającej graczowi wybór ilości pytań w grze,* wyświetlanie w odpowiedziach duszka całego działania z poprawnym wynikiem,* zmianę gry na wersję nieskończonej ilości pytań.png]]
[[Plik:Mm1pGrę sumowanie można zmienić na grę mnożenie dokonując niewielkiej modyfikacji skryptów.png]]
To jest cały kod kota.[[Plikhttp:mm1//scratch.mit.png]]edu/projects/25978003/#editor