Wyścigi – scenariusz projektu

Projekt będzie polegał na opracowaniu programu symulującego wyścigi, z wykorzystaniem języka programowania Scratch. Od twojego wyboru zależy, jacy zawodnicy lub zawodniczki wezmą udział w danej konkurencji. Może to być bieg lekkoatletyczny, wyścig zwierząt, samochodów albo motocykli. Zawodom towarzyszyć powinna publiczność dopingująca swoich faworytów. Gdy konkurencja się zakończy, część publiczności będzie się cieszyła ze zwycięstwa swojego zawodnika, druga zaś będzie spokojnie stała po przegranej.
Zobacz przykładowe działanie aplikacji na poniższym filmie.

RvNX6mjMkFgBa
Film: Przykładowe działanie programu symulującego wyścigi.

Aby wykonać to ćwiczenie, ważna jest znajomość podstaw obsługi środowiska Scratch. Jeśli nie masz doświadczenia z tym językiem, zachęcamy do zapoznania się z materiałem Wprowadzenie do środowiska ScratchDUVRjOY3CWprowadzenie do środowiska Scratch.

Polecenie 1

Zaplanuj scenerię dla projektu - zastanów się, gdzie umieścisz publiczność, tory wyścigowe, punkt startu oraz mety. Czy użytkownik będzie na nich patrzył z boku, a może z góry?

iHx6nhN4fB_d5e124

Wykorzystaj poniższy dzienniczek na zapisanie swoich notatek i przemyśleń.

RvMVGW2qBMwpj
Dzienniczek, w którym możesz zapisać swoje notatki i przemyślenia.
Dzienniczek, w którym możesz zapisać swoje notatki i przemyślenia.
Źródło: GroMar, licencja: CC BY 3.0.

Projektujemy działania duszków

3
Ćwiczenie 1

Zastanów się nad możliwym przebiegiem wyścigu i zapisz algorytmy, według których poruszać się będzie każdy zawodnik. Pamiętaj, żeby zaplanować ruch w taki sposób, by szanse na zwycięstwo obu zawodników były takie same oraz by w czasie wyścigu mogli zmieniać się na prowadzeniu. Symulacja dzięki temu będzie bardziej dynamiczna.

R1LWZjda79HTC
Ćwiczenie 1
Jak nazywa się blok który pozwala ustawić duszka w wybranym miejscu? Możliwe odpowiedzi: 1. Prawidłowa odpowiedź, 2. Nieprawidłowa odpowiedź A, 3. Nieprawidłowa odpowiedź B
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
1
Ćwiczenie 2

Zapisz algorytm, który będzie rozpoznawał, że zawodnik osiągnął linię mety.

RptnB0FozlFCW
Ćwiczenie 2
W jakiej kategorii znajduje się blok umożliwiający sprawdzanie, czy duszek dotknął określonego koloru lub innego duszka? Możliwe odpowiedzi: 1. Czujniki, 2. Ruch, 3. Kontrola
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
1
Ćwiczenie 3

Określ, w jaki sposób rozpoznać, że zawodnik wygrał lub przegrał.

RQmGuTkaxGX5C
Ćwiczenie 3
W jakiej kategorii znajduje się blok umożliwiający utworzenie nowej zmiennej? Możliwe odpowiedzi: 1. Zmienne, 2. Ruch, 3. Kontrola
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
1
Ćwiczenie 4

W jaki sposób powinien zachowywać się duszek - kibic?  Zapisz algorytmy postępowania kibica w trakcie wyścigu, a także po przegranej lub wygranej zawodnika któremu będzie kibicować.

Rr9A31K0Dom1K
Ćwiczenie 4
Jak nazywa się kategoria w której możesz znaleźć bloki związane z komunikami? Możliwe odpowiedzi: 1. Zdarzenia, 2. Ruch, 3. Kontrola
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.

Jak można było zauważyć na filmie z przykładem działania programu, poszczególnym zawodnikom kibicuje całkiem duża grupa publiczności. Do powielenia pojedynczego kibica można użyć mechanizm klonowania duszków, który zostanie omówiony w dalszej części materiału.

iHx6nhN4fB_d498e137
iHx6nhN4fB_d5e394

Tworzymy aplikację - budujemy skrypty

Mając zaprojektowane działania dla poszczególnych duszków, możesz przystąpić do stworzenia skryptów.

Polecenie 2

Przygotuj tło sceny na potrzeby wyścigów, dodaj dwa duszki - zawodników oraz dwa duszki - kibiców (po jednym dla każdego zawodnika), ewentualnie inne duszki - jeśli zostały uwzględnione w twoim planie. Nie zapomnij odpowiednio nazwać każdego duszka.

To jak przygotujesz tło sceny będzie miało wpływ na pozycje startowe zawodników, czy miejsca kibiców. Nie musisz sugerować się poniższymi wartościami. W twoich skryptach zawodnicy mogą ścigać się, np. w innym miejscu sceny.

2
Ćwiczenie 5

Stwórz skrypty dla każdego z duszków zgodnie z przygotowanymi algorytmami ich działania. Następnie przetestuj program. Uruchom go parokrotnie. Czy zawodnicy zwyciężają na zmianę? Czy każdego z zawodników dopinguje jeden kibic, który cieszy się, w przypadku zwycięstwa lub jest smutny, w przypadku przegranej?

RFkpWMdWtbFsi
Ćwiczenie 5
Jak nazywa się kategoria w której możesz znaleźć bloki związane z porównywaniem wartości zmiennych? W tej samej kategorii możesz również znaleźć blok związany z losowaniem liczby z określonego zakresu. Możliwe odpowiedzi: 1. Wyrażenia, 2. Zdarzenia, 3. Kontrola
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
iHx6nhN4fB_d5e451
klonowanie_duszkow

Zwiększamy liczbę kibiców

Podczas zawodów jednego zawodnika lub drużynę dopinguje zazwyczaj wielu kibiców. Dlatego także w twojej symulacji wyścigów warto zadbać o odpowiednią liczbę widzów.

2
Ćwiczenie 6

Zmodyfikuj działanie duszka - kibica tak, aby zwiększyć liczbę widzów dopingujących danego zawodnika. Wykorzystaj w tym celu mechanizm klonowaniaklonowanie_duszkowmechanizm klonowania.

R1RwFBdbQDxU0
Ćwiczenie 6
Jak nazywa się blok, który pozwala na zmianę kostiumu duszka na następny? Możliwe odpowiedzi: 1. Następny kostium., 2. Następne tło., 3. Zmień kostium na ... .
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
iHx6nhN4fB_d5e505

Zadania uzupełniające

2
Ćwiczenie 7

Dodaj do aplikacji wyświetlanie czasów poszczególnych zawodników w podobny sposób, jak widać na filmie z przykładową aplikacją.

RNmlDMjieuYCG
Ćwiczenie 7
W jakiej kategorii znajduje się opcja, która umożliwia zmianę widoczności zmiennej? Możliwe odpowiedzi: 1. Zmienne., 2. Ruch., 3. Kontrola.
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
2
Ćwiczenie 8

Dodaj do aplikacji wyświetlanie miejsca, które zajął dany zawodnik, w podobny sposób, jak widać na filmie z przykładową aplikacją.

RRVPL09Tb1vjm
Ćwiczenie 8
Jak nazywa się blok który pozwala ustawić wartość zmiennej na podaną wartość? Możliwe odpowiedzi: 1. Ustaw ... na ... ., 2. Zmień ... o ... .
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
2
Ćwiczenie 9

Przeprowadź kilkanaście wyścigów i zanotuj, ile razy wygrali poszczególni zawodnicy. Wyniki porównaj z kolegami i koleżankami. Czy można przyjąć, że przy odpowiednio wielu próbach, każdy z zawodników wygra mniej więcej tyle samo razy?

RL2UOuFHerRkS
Ćwiczenie 9
Czy wraz ze wzrastającą liczbą wyścigów, różnica w wygranych wyścigach pomiędzy zawodnikami będzie się powiększać czy zmniejszać? Możliwe odpowiedzi: 1. Różnica będzie się pomniejszać., 2. Różnica będzie się zwiększać.
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.
3
Ćwiczenie 10

Zmodyfikuj aplikację w taki sposób, aby automatycznie po zakończeniu wyścigu startował następny. Niech program automatycznie zlicza i wyświetla łączną liczbę wygranych dla poszczególnych zawodników. Uruchom program i obserwuj wyniki. Czy twoje wcześniejsze obserwacje potwierdzają się?

RFnUytnpOASSp
Ćwiczenie 10
W jakiej kategorii znajdują się bloki umożliwiające liczenie czasu? Możliwe odpowiedzi: 1. Czujniki, 2. Ruch, 3. Kontrola
Test jednokrotnego wyboru.
Źródło: GroMar, licencja: CC BY 3.0.