Sumowanie: Różnice pomiędzy wersjami

Z Wiki Mistrzowie Kodowania
Skocz do: nawigacji, wyszukiwania
(Jak modyfikować)
 
(Nie pokazano 83 wersji utworzonych przez 6 użytkowników)
Linia 1: Linia 1:
Link do gry: http://scratch.mit.edu/projects/25439415/
+
[[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/26090741/ Sumowanie]
 +
 
 
== Cel ==
 
== Cel ==
Modyfikacja gry polegającej na sumowaniu wpisywanych przez gracza liczb z określonego w niej przedziału liczbowego.
+
Stworzenie gry polegającej na obliczaniu przez gracza sumy liczb proponowanych przez duszka
 
=== Zgodność z Podstawą Programową ===
 
=== Zgodność z Podstawą Programową ===
  
Linia 13: Linia 17:
 
'''Edukacja plastyczna'''  
 
'''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;  
+
# 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'''
 
'''Edukacja matematyczna'''
..... czekam na punkty
+
# 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'''
 
'''Zajęcia komputerowe'''
Linia 24: Linia 30:
 
# wpisuje za pomocą klawiatury litery, cyfry i inne znaki, wyrazy i zdania,
 
# wpisuje za pomocą klawiatury litery, cyfry i inne znaki, wyrazy i zdania,
  
==Jak modyfikować ==
+
==Jak stworzyć? ==
 
<small>Czas na realizację tej części: ok 90 min</small>
 
<small>Czas na realizację tej części: ok 90 min</small>
  
'''wyjaśnienie gry bazowej'''
+
=== wprowadzenie ===
Zaprezentujmy i omówmy mechanizm działania gry bazowej.
+
<small>Czas na realizację tej części: ok 15 min</small>
Gra podstawowa polega tym, że duszek - bohater zadaje pytanie, prosi o podanie dwóch liczb które ma dodać. Następnie poczeka na wpisane przez gracza propozycje liczb i poda wynik sumowania tych liczb. Gra zawiera możliwość określania zakresu liczb do wyboru dla gracza. Zapytajmy uczniów o ich pomysły na modyfikację tego projektu.
+
Niniejszy scenariusz uwzględnia następujące propozycje modyfikacji:
+
* zmianie zakresu liczb do dodawania,
+
* zmianie graficznego wyglądu gry.
+
oczywiście mogą pojawić się też inne, jest to zależne od poziomu zaawansowania grupy. Uczniowie podając przykład modyfikacji potrafią na poziomie zaawansowanym podać również sposób przeprowadzenia tej modyfikacji.
+
  
=== pobranie projektu bazowego ===
+
Proponujemy uczniom stworzenie gry według scenariusza:
 +
# duszek - bohater prosi gracza o obliczenie sumy losowo wybranych liczb,
 +
# 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.
 +
# w przypadku poprawnej odpowiedzi naliczy graczowi punkt, w przypadku błędnej odpowiedzi punktu nie ma.
 +
# duszek - bohater zada np.: 10 pytań i na koniec zabawy poinformuje nas o ilości zdobytych punktów za poprawne odpowiedzi.
  
<small>Czas na realizację tej części: ok 15 min</small>
+
Ustalamy co jest nam potrzebne:
 +
# duszek bohater i ewentualne tło sceny
 +
# 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.
  
Uczniowie muszą pobrać wersję bazową projektu ''Sumowanie'' Najlepiej wykorzystać do tego adres projektu: http://scratch.mit.edu/projects/25439415/#editor. Adres można wcześniej zamieścić na szkolnym blogu/ stronie lub dodać projekt do studia Po wyszukaniu projektu klikamy w ikonę [[Plik:Ikona4.png|wyświetla wnętrze projektu]] i przechodzimy do wersji roboczej projektu. Jeśli uczniowie pracują on-line wystarczy, że klikną w REMIKS i zostanie on przypisany do ich konta. Jeśli praca w grupie odbywa off-line należy wejść w polecenie plik i wybrać opcję ''pobierz na swój komputer''.
+
=== 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'''.
  
Zaczniemy od stworzenia duszka który będzie nas witał i nadawał sygnał rozpoczęcia się rozgrywki.
+
=== instrukcje dla duszka ===
Nasza gra  posiadała tylko jednego duszka
+
<small>Czas na realizację tej części: ok 65 min</small>
[[Plik:Mm1p.png]]
+
  
Teraz stworzymy zmienne które będą przechowywały wylosowane liczby, mogą być widziane tylko przez tego duszka.
+
Zaczniemy od stworzenia skryptu, w którym duszek będzie nas witał i zaproszał do gry.  
  
[[Plik:mm1c.png]]
+
[[Plik:Sum5c.png]]
  
Teraz wystarczy zrobić zadawanie pytań i sprawdzanie odpowiedzi.
+
Widok na scenie:
  
[[Plik:mm1a.png]]
+
[[Plik:Sum5d.png|300px|]]
  
Teraz nasz skrypt działa na sztywno zakres obliczeń wynosi od 1 do 20. Teraz zrobimy żeby można było z trakcie gry zwiększać trudność.
+
==== wprowadzenie zmiennych ====
Zaczniemy od stworzenia zmiennej.
+
 
 +
W pierwszej kolejności 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.
 +
 
 +
[[Plik: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
 +
[[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:Sum6d.png|right|przykładowy urywek skryptu na scenie]]
  
[[Plik:mm1d.png]]
+
== Co dalej? ==
  
Teraz możemy ustawić przedział.
+
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ń.
  
[[Plik:mm1e.png]]
+
Grę sumowanie można zmienić na grę mnożenie dokonując niewielkiej modyfikacji skryptów.
[[Plik:mm1f.png]]
+
  
To jest cały kod kota.
+
http://scratch.mit.edu/projects/25978003/#editor
[[Plik:mm1.png]]
+

Aktualna wersja na dzień 12:10, 7 lis 2014

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

W pierwszej kolejności 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