Maszynka losująca (wersja B)
Materiały stworzone w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska
Spis treści
Cel
Celem projektu jest stworzenie programu umożliwiającego losowanie liczby z podanego zakresu lub losowanie imienia/nazwiska z wprowadzonej listy.
Informacje
- Poziom trudności dla klas 4-6 ✪✪✰✰
- Poziom trudności dla gimnazjum ✪✰✰✰
Gotowy projekt [Maszynka losująca]
Etapy
Wybieramy lub rysujemy postać duszka, który będzie losował.
Skrypt losowania liczby lub imienia/nazwiska.
Skrypt zawiera pola dialogowe z bloków i
, opcję zmienne i tworzenia zmiennych z bloku
oraz element losowania z bloku
.
Wybrany w tej wersji duszek Jay informuje o możliwości wylosowania liczby lub elementu z listy. W uzależnieniu od decyzji gracza zadaje pytanie o zakres liczb lub prosi o podanie zestawu danych do listy. Po uzyskaniu odpowiedzi losuje. W ostatnim punkcie duszek podaje losowo wybraną liczbę.
Algorytm wyboru między losowaniem liczby z podanego zakresu, a losowaniem elementu z utworzonej listy.
Algorytm losowania liczby
Algorytm losowania elementu z utworzonej listy.
W bloku tworzymy zmienną
gromadzącą informacje na temat liczby wprowadzonych na liście elementów (np.: ilość wprowadzonych imion, nazwisk itp).
W tym samym bloku tworzymy listę, która będzie gromadziła listę wprowadzanych do wylosowania elementów
Rozpoczynając gromadzenie danych, maszynka losująca musi posiadać zmienną numer elementu ustawioną na pierwszą liczbę (1), po każdym dodaniu elementu do listy, wartość zmiennej ulega zwiększeniu. W tym celu do skryptu wprowadzone zostają klocki
Aby wychwycić moment ukończenia listy i nadać sygnał do rozpoczęcia losowania korzystamy z opcji nieudzielenia odpowiedzi, tj. pust pole, wykorzystując klocki:
Na tym etapie ten fragment skryptu może wyglądać w następujący sposób:
Aby maszynka losująca udzieliła odpowiedzi, poprzez podanie wylosowanego elementu, wykorzystujemy formułę:
Warto zwrócić uwagę na konieczność usunięcia z listy elementów, ostatniej odpowiedzi, tj.: pustego pola. Brak odpowiedzi miał być sygnałem do rozpoczęcia losowania, jednak ten ostatni element nie powinien być brany pod uwagę w losowaniu:
Zanim zatem maszynka losująca dokona losowania i poda odpowiedź należy dodać klocek usuwający puste pole.
Jednocześnie, aby maszynka losująca był a gotowa do zbierania nowych elementów na liście zimennych, należy skrypt w poczatkowej części, uzupełnić o klocek
Finałowy skrypt
W zakończeniu możemy wprowadzić dodatkowe klocki dialogowe, które będa reagowały na wybór kategorii poza zdefiniowanymi (1) zakresem liczb a (2) elementami dodawanymi do listy.