Sumowanie: Różnice pomiędzy wersjami

Z Wiki Mistrzowie Kodowania
Skocz do: nawigacji, wyszukiwania
m (instrukcje dla duszka)
m (instrukcje dla duszka)
Linia 58: Linia 58:
 
<small>Czas na realizację tej części: ok 65 min</small>
 
<small>Czas na realizację tej części: ok 65 min</small>
  
Zaczniemy od stworzenia skryptu, którym duszek będzie nas witał i zaprosi do gry.  
+
Zaczniemy od stworzenia skryptu, w którym duszek będzie nas witał i zaproszał do gry.  
  
 
[[Plik:Sum5c.png]]
 
[[Plik:Sum5c.png]]

Wersja z 11:24, 28 sie 2014

Materiały stworzone w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska


Link do gry: Sumowanie

Cel

Stworzenie gry polegającej na obliczaniu przez gracza sumy liczb proponowanych przez duszka

Zgodność z Podstawą Programową

Edukacja polonistyczna

  1. w zakresie umiejętności społecznych warunkujących porozumiewanie się i kulturę języka:
    • obdarza uwagą dzieci i dorosłych, słucha ich wypowiedzi i chce zrozumieć, co przekazują;
  2. w zakresie umiejętności czytania i pisania:
    • rozumie sens kodowania oraz dekodowania informacji;

odczytuje uproszczone rysunki, piktogramy, znaki informacyjne i napisy,

Edukacja plastyczna

  1. 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

  1. 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. na palcach; sprawnie dodaje i odejmuje w zakresie do 10, poprawnie zapisuje te działania,

Zajęcia komputerowe

  1. posługuje się komputerem w podstawowym zakresie: uruchamia program, korzystając z myszy i klawiatury;
  2. stosuje się do ograniczeń dotyczących korzystania z komputera.
  3. wpisuje za pomocą klawiatury litery, cyfry i inne znaki, wyrazy i zdania,

Jak stworzyć?

Czas na realizację tej części: ok 90 min

wprowadzenie

Czas na realizację tej części: ok 15 min

Proponujemy uczniom stworzenie gry według scenariusza:

  1. duszek - bohater prosi gracza o obliczenie sumy losowo wybranych liczb,
  2. następnie poczeka na wpisane przez gracza odpowiedzi, sprawdzi ją i poinformuje o tym, czy odpowiedź jest dobra, czy też gracz popełnił błąd.
  3. w przypadku poprawnej odpowiedzi naliczy graczowi punkt, w przypadku błędnej odpowiedzi punktu nie ma.
  4. duszek - 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:

  1. duszek bohater i ewentualne tło sceny
  2. 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

Czas na realizację tej części: ok 10 min

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

Czas na realizację tej części: ok 65 min

Zaczniemy od stworzenia skryptu, w którym duszek będzie nas witał i zaproszał do gry.

Sum5c.png

Widok na scenie:

Sum5d.png

wprowadzenie zmiennych

Następnie zaprogramujemy wybieranie przez duszka liczb w określonym zakresie. W tym celu musimy najpierw wprowadzić zmienne: 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.

Zmienną wprowadzamy w kategorii klocków dane poprzez wybranie opcji stwórz nową zmienną. Musimy zaznaczyć odpowiednią opcję przypisania zmiennej i zatwierdzić przyciskiem OK.

Okn1a.png

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 ustawiamy zakresy losowania naszych zmiennych. Wykorzystamy do tego blok 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:

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: 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:

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: Sum2c.png i Sum2c1.png umożliwiających programowanie działań matematycznych oraz klocka kontroli badanie możliwych odpowiedzi- pozwalającego zbadać dwa przypadki odpowiedzi. Użycie ich w skrypcie, w przypadku naszego duszka, będzie następujące:

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:

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 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 powtarzanie skryptów. Skrypt będzie wyglądał następująco:

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).

Okn1b.png

Żeby punkty przy każdorazowym uruchomieniu gry naliczały się od początku - po uruchomieniu gry muszą się zerować, blok zeruje licznik punktów. Aby po każdorazowej poprawnej odpowiedzi naliczały się - muszą zwiększać się o 1, blok zwiększa licznik punktów o 1. Wykorzystując te klocki można dokonać następującej modyfikacji:

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 Sum2a.png umożliwiający połączenie wyświetlanego tekstu ze zmienną punkty:

wyświetla tekst i zapamiętaną wartość zmiennej

Cały skrypt duszka wygląda następująco:

cały skrypt duszka
przykładowy urywek skryptu na scenie

Co dalej?

Podstawową grę można zmodyfikować poprzez:

  • 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ń.

Grę sumowanie można zmienić na grę mnożenie dokonując niewielkiej modyfikacji skryptów.

http://scratch.mit.edu/projects/25978003/#editor