RR5DxWSm41whD

Budowanie i modyfikowanie skryptów, tworzenie własnych bloków, stosowanie pętli w Scratch

Źródło: licencja: CC BY-SA 3.0. CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=86915.

Rysowanie gwiazd na scenie

W tym rozdziale napiszemy projekt, w którym scenę podzielimy na dwie części. W górnej części sceny (dla liczb y nieujemnych) duszek (ukryty) narysuje gwiazdy. W dolnej, drugi duszek (lub więcej duszków, jeśli zechcesz) będzie działał według twojego własnego scenariusza. Obejrzyj poniższy film prezentujący ten projekt.

R942tfjh3Ol3Y
Animacja przedstawia tańczącego robota na księżycu. Podczas jego tańca na niebie pojawiają się gwiazdy.

W naszym projekcie wszystkie gwiazdy będą ośmioramienne. W matematyce taką figurę nazywa się ośmiokątem foremnym gwiaździstym. Powstaje ona z połączenia co trzeciego wierzchołka ośmiokąta foremnego. Kąt wewnętrzny każdego ramienia tej gwiazdy ma 45 ° .

R11rXyp55ZXHU
Gwiazda ośmioramienna.
Źródło: nn, licencja: CC BY 3.0.
Ćwiczenie 1

Zapisz w punktach algorytm rysowania gwiazdy ośmioramiennej.

R1EJJyRVlJn6E
Źródło: GroMar, licencja: CC BY 3.0.

Zadaniem ukrytego duszka będzie narysowanie kilku lub kilkunastu gwiazd losowo położonych na niebieskim tle. Dobierz długość ramienia gwiazdy i zastanów się, z jakiego zakresu powinieneś losować liczby x i y określające położenie punktu, z którego duszek rozpoczyna rysowanie gwiazdy. Pamiętaj również o odpowiednim ustawieniu kierunku duszka.

Ćwiczenie 2

Zapisz w punktach algorytm rysowania 10 gwiazd na niebieskiej części tła sceny.

RPt8kowNnZN8e
Źródło: GroMar, licencja: CC BY 3.0.

Tworzymy własny blok

W ćwiczeniu 2 opisując algorytm realizujący rysowanie gwiazd na niebieskim tle założyliśmy, że umiemy narysować pojedynczą gwiazdę w określonym miejscu sceny. Innymi słowy, założyliśmy, że mamy do dyspozycji blok rysujący taką gwiazdę. Wśród dziesięciu kategorii bloków znajdziesz kategorię Moje bloki, a w niej przycisk Utwórz blok. Dzięki niemu utworzymy własny blok. Obejrzyj na filmie, jak to zrobić.

Re1OWqO1jmZvB
Film prezentujący tworzenie własnego bloku.
Ćwiczenie 3

Utwórz nowy blok Gwiazda rysujący gwiazdę ośmioramienną.

R1C9mmgqYMEjq
Ćwiczenie 3
W jakiej kategorii znajduje się opcja umożliwiająca utworzenie nowego bloku? Zaznacz prawidłową odpowiedź.
Źródło: GroMar, licencja: CC BY 3.0.
Ćwiczenie 4

Napisz skrypt, który po kliknięciu w zieloną flagę rysuje kilka lub kilkanaście gwiazd losowo rozmieszczonych na niebieskim tle. Tło zaprojektuj bezpośrednio w Scratch lub wykorzystaj do tego dowolny program graficzny. Skorzystaj z nowo utworzonego bloku rysującego pojedynczą gwiazdę z poprzedniego ćwiczenia.

Napisz w punktach algorytm, który pozwoli na stworzenie kilku gwiazd w losowych miejscach prostokąta o wymiarach 480 (szerokość) na 360 (wysokość).

RKr5qZCy2kdOF
Lista kroków:
Źródło: GroMar, licencja: CC BY 3.0.
Ćwiczenie 5

Przygotuj skrypt realizujący własny scenariusz dla drugiego duszka w dolnej części sceny.

R1KeWALWEdsC7
Ćwiczenie 5
W jakiej kategorii znajduje się blok umożliwiający zmianę kostiumu duszka na następny? Zaznacz prawidłową odpowiedź.
Źródło: GroMar, licencja: CC BY 3.0.
Ważne!

Często bardziej złożony problem warto podzielić na podproblemy i zapisać je w postaci oddzielnych bloków. W celu utworzenia nowego bloku należy przejść do kategorii **Moje bloki**. Następnie kliknąć przycisk **Utwórz blok**, w polu edycyjnym wpisać jego nazwę i zatwierdzić przyciskiem **OK**. W obszarze skryptów pojawi się nowy blok, pod który można podczepić inne bloki realizujące rozwiązywany podproblem.

Ciekawostka

W Scratch można też utworzyć bloki z danymi wejściowymi. Na przykład blok rysujący gwiazdy o różnych długościach ramion. O tym, jak to zrobić możesz przeczytać w materiale Gwiazdozbiór - tworzenie gwiazd i figur w programie Scratch.

icckVlRpet_d429e144
icckVlRpet_d429e206
icckVlRpet_d429e207
icckVlRpet_d429e208
moon
przycisk_dodaj_tlo

Poniżej znajduje się pole tekstowe przeznaczone do zapisywania notatek. Możesz w nim zapisać wszystkie informacje, które uważasz za potrzebne.

R1W31KmUq0nMc
Pole tekstowe do zapisywania odpowiedzi i notatek.
Źródło: GroMar, licencja: CC BY 3.0.