PROGRAMOWANIE W SCRATCH Programy w Scratch buduje się w edytorze bloków funkcjonalnych. ZAKŁADANIE KONTA Scratch może zostać zainstalowany na komputerze lub możemy korzystać z niego poprzez przeglądarkę internetową. Aby korzystać z programu przez przeglądarkę należy założyć konto w serwisie Scratch. Zakładanie konta: wchodzimy na stronę www.scratch.mit.edu klikamy Dołącz do Scratch wypełniamy nazwę użytkownika i hasło oraz klikamy Następne
podajemy datę urodzenia, płeć i państwo podajemy e-mail
klikamy OK., chodźmy! i możemy rozpoczynać programowanie w Scratch
jeśli chcemy aktywować udostępnianie swoich programów i mieć dostęp do programów innych użytkowników musimy potwierdzić nasze konto klikając na link, który otrzymaliśmy mailem możemy kliknąć okienko Zajrzyj do środka i zobaczyć program, którym dany projekt został zrobiony.
OKNO PROGRAMU Główne okno programu Scratch podzielone jest na sekcje. Opis sekcji: 1 - Główne menu programu. W menu tym można m.in.: zapisać program pobrać program na swój komputer wgrać projekt aplikacji stworzonej w starszej wersji Scratcha przełączyć się w Układ małej sceny rozwinąć menu szybkiej pomocy klikając w napis Wskazówki 2 - Narzędzia pozwalające na szybką edycję duszka. Od lewej: duplikowanie duszka wycinanie duszka powiększanie duszka pomniejszanie duszka pomoc na temat bloku 3 Guziki do udostępniania i projektu przycisk Udostępnij pozwala na udostępnienie projektu- po udostępnieniu każda osoba będzie mogła go widzieć przycisk Przejdź do strony projektu pozwala na podejrzenie strony, którą zobaczą inni użytkownicy
4 Wybieranie nazwy dla programu 5 Uruchamianie i zatrzymywanie skryptu dla wszystkich duszków zieloną flagą uruchamiamy skrypt czerwonym znakiem stop zatrzymujemy działanie programu 6 Scena wyświetlane są tutaj duszki wykonujące zaprogramowane instrukcje 7 Ten obszar podaje aktualne współrzędne miejsca, w którym jest umieszczony kursor myszki 8 Guziki pozwalają na: wybranie duszka z bazy Scratcha namalowanie własnego duszka we wbudowanym edytorze programu wgranie duszka z pliku na komputerze stworzenie duszka przy pomocy kamery internetowej 9 Wybieranie sceny (tła) dla wykonywanego skryptu. Domyślnie sceną jest biała plansza. Nowe sceny można wgrywać z bazy Scratch, tworzyć samemu, wgrywać ze stworzonych przez siebie plików, fotografować kamerą. 10 Wybieranie duszka, którego w danym momencie chcemy programować. Program może mieć kilka duszków i każdy z nich może być inaczej zaprogramowany. 11 Zakładki pozwalające na zmianę zawartości sekcji, która domyślnie wyświetla skrypty oraz bloczki potrzebne do stworzenia programu Skrypty zakładka zwierająca bloczki, z których budujemy programy Kostiumy zakładka, w której dokonujemy zmiany w wyglądzie duszków Dźwięki zakładka, w której dodajemy odgłosy do projektu 12 Skrypty w to miejsce należy przeciągać bloczki, by stworzyć program. Można łączyć ze sobą dowolną liczbę pasujących do siebie bloczków, tworząc ich segmenty. Usuwanie niepotrzebnego bloczku polega na kliknięciu na nim prawym przyciskiem myszki i wybraniu opcji Usuń. W ten sam sposób można je duplikować 13 Obszar informujący o współrzędnych, które określają położenie aktywnego w danym momencie duszka 14 kod programu 15 Guziki, którymi można pomniejszyć lub powiększyć projekt oraz powrócić do jego ustawień domyślnych
KATEGORIA RUCH Kategoria RUCH zawiera bloczki związane z ruchem duszków przesuwanie, obracanie oraz odczytywanie aktualnych danych związanych z położeniem duszka. blok opis przesunięcie duszka o określoną liczbę kroków. Domyślne wartości możemy edytować tzn. możemy zamiast 20 wstawić inną liczbę. Jeśli chcemy przesunąć duszka do tyłu należy podać wartość ujemną obrócenie duszka w prawo o określoną liczbę stopni obrócenie duszka w lewo o określoną liczbę stopni ustawienie duszka na określony kierunek. Można z listy wybrać jeden z czterech kierunków lub wpisać ręcznie określony kąt (w stopniach). ustawienie duszka w kierunku kursora myszy lub innego duszka. Obiekt (duszka lub kursor myszy) wybieramy z listy rozwijanej. przesunięcie duszka do punktu o określonych współrzędnych x,y przesunięcie duszka do pozycji kursora myszy, do pozycji losowej lub do pozycji innego duszka. Obiekt (określonego duszka lub kursor myszy) wybieramy z listy rozwijanej. przesunięcie duszka do punktu o określonych współrzędnych x,y. Polecenie wykonywane jest przez określony czas. zmiana współrzędnej x duszka o określoną wartość.
przesunięcie duszka do punktu o określonej współrzędnej x. zmiana współrzędnej y duszka o określoną wartość. przesunięcie duszka do punktu o określonej współrzędnej y. zmiana kierunku na przeciwny, jeśli duszek dotknie krawędzi sceny. określenie sposobu zachowania duszka w zależności od wybranego kierunku. podanie aktualnej współrzędnej x pozycji duszka (jego środka). Środek można ustawić edytując kostium duszka. Zwracaną wartość można wykorzystać jako argument w wyrażeniach. Przyjmuje wartości od -240 do 240. Włączenie znacznika po lewej stronie bloku powoduje wyświetlanie aktualnej wartości na scenie. Dotyczy to każdego bloczka, który posiada opcję włączania znacznika. podanie aktualnej wartości współrzędnej y pozycji duszka (jego środka). Zwracaną wartość można wykorzystać jako argument w wyrażeniach. Przyjmuje wartości od - 180 do 180. określenie aktualnego kierunku duszka.
KATEGORIA WYGLĄD Kategoria WYGLĄD zawiera bloczki związane z wyglądem duszków np. kostium, wielkość, widoczność blok opis wyświetlenie w dymku przez określony czas tekstu podanego w polu edycyjnym. Do pola edycyjnego można także przeciągnąć zmienną lub zbudować w tym miejscu wyrażenie. wyświetlenie w dymku tekstu podanego w polu edycyjnym. wyświetlenie w dymku przez określony czas tekstu podanego w polu edycyjnym. wyświetlenie w dymku tekstu podanego w polu edycyjnym. wyświetlenie obrazu duszka (aktualnego kostiumu), jeśli duszek jest ukryty. ukrycie obrazu duszka, jeśli duszek jest widoczny. zmiana kostiumu duszka na kostium wybrany z listy rozwijanej. zmiana kostiumu duszka na następny kostium. zmiana tła na wybrane z listy rozwijanej.
zmiana koloru duszka oraz innych efektów o wpisaną wartość. ustawienie koloru duszka zgodnie z wpisaną wartością oraz ustawienie innych efektów. usunięcie wszystkich efektów graficznych dla duszka. zmiana wielkości duszka (wszystkich kostiumów) o określoną wartość. Aby pomniejszyć wielkość duszka należy podać wartość ujemną. zmiana wielkości duszka (wszystkich kostiumów) na określoną wielkość wyrażoną w procentach. wyświetlenie duszka jeśli jest on przykryty przez inne duszki. przesunięcie duszka o 1 warstwę względem innych elementów (duszków). Duszek może się ukryć za innymi duszkami. podanie numeru aktualnego kostiumu duszka. podanie nazwy aktualnego tła podanie rozmiaru duszka jako% jego oryginalnego rozmiaru
KATEGORIA DŹWIĘK Kategoria DŹWIĘK zawiera bloczki związane z dźwiękami, instrumentami i nutami. blok opis odtworzenie pliku dźwiękowego wybranego z listy rozwijanej. odtwarzanie pliku dźwiękowego wybranego z listy rozwijanej. Wykonywanie skryptu zostaje wstrzymane. zatrzymanie wszystkich odtwarzanych aktualnie dźwięków.
zagranie wybranego instrumentu przez określoną ilość taktów. wstrzymanie odtwarzania dźwięków przez określoną ilość taktów. odtwarzanie wybranej nuty przez określoną ilość taktów.
ustawienie rodzaju przyrządu, którego duszek używa do bloków nutowych. zmiana głośności odtwarzanego o określoną wartość. ustawienie głośności odtwarzanego dźwięku do określonej wartości procentowej. wyświetla na scenie aktualny poziom głośności. zmienia tempo odtwarzanego dźwięku o określoną wartość. ustawia określoną ilość taktów na minutę. wyświetla na scenie aktualne tempo.
KATEGORIA PISAK Kategoria PISAK zawiera bloki związane z pisakiem duszka, jego stanem, kolorem, grubością. blok opis wyczyszczenie wszystkich rysunków ze sceny. Nie usuwa tła sceny. wykonanie duplikatu duszka na scenie. opuszczenie pisaka duszka. podniesienie pisaka duszka. wybranie koloru pisaka. zmiana koloru pisaka o określoną wartość. Każdy kolor posiada swoją wartość liczbową. ustawienie koloru pisaka na określoną wartość. zmiana odcienia pisaka o określoną wartość. Każdy kolor posiada swój odcień określony wartością liczbową w zakresie od 0 do 100. ustawienie odcienia pisaka na określony kolor. zmiana grubości pisaka o określoną wartość. ustawienie grubości pisaka na podaną wartość.
KATEGORIA DANE W kategorii DANE dostępne są dwa przyciski: Utwórz zmienną oraz Utwórz listę. Tworzenie zmiennej: Klikamy Utwórz zmienną. Pojawi się wówczas poniższe okienko: W okienku wpisujemy nazwę zmiennej oraz zaznaczamy czy zmienna ma dotyczyć wszystkich duszków czy tylko określonego duszka. Po utworzeniu zmiennej pojawiły się jej parametry:
Zmienna pojawiła się też na scenie gdyż zaznaczony jest znacznik po jej lewej stronie. Tworzenie listy Klikamy Utwórz listę. Pojawi się wówczas poniższe okienko: W okienku wpisujemy nazwę listy oraz zaznaczamy czy lista ma dotyczyć wszystkich duszków czy tylko określonego duszka. Po utworzeniu listy pojawiły się jej parametry:
Elementy do listy można dodawać za pomocą bloczka lub znakiem na liście wyświetlanej na scenie znajdującym się
KATEGORIA ZDARZENIA Kategoria ZDARZENIA zawiera bloczki odpowiadające za generowanie zdarzeń w programie i zarządzanie nimi. blok opis uruchomienie programu gdy naciśnięta zostanie zielona flaga. uruchomienie programu gdy naciśnięty zostanie klawisz wybrany z listy rozwijanej. uruchomienie programu gdy kliknięty zostanie duszek. uruchomienie programu gdy tło zmieni się na tło wybrane z listy rozwijanej. uruchomienie programu gdy element z listy rozwijanej jest większy niż wartość określona w polu edycyjnym.
uruchomienie programu gdy nadany zostanie określony komunikat. nadawanie komunikatu. nadawanie komunikatu i wstrzymanie skryptu.
KATEGORIA KONTROLA Kategoria KONTROLA zawiera odpowiedniki instrukcji sterujących w językach programowania (pętle, instrukcje warunkowe). blok opis wstrzymanie działania skryptu na określony czas. powtarzanie zestawu instrukcji określoną liczbę razy. powtarzanie zestawu instrukcji w nieskończoność. instrukcja warunkowa: wykonany zostanie raz zestaw instrukcji jeśli warunek logiczny wstawiony po słowie jeżeli jest prawdziwy. instrukcja warunkowa. Wykonany zostanie następujący zestaw instrukcji: jeżeli warunek A jest prawdziwy to wykona się instrukcja B. W przeciwnym razie wykona się instrukcja C. wstrzymanie działania skryptu do momentu spełnienia warunku logicznego. powtarzanie zestawu instrukcji aż do spełnienia warunku logicznego.
zatrzymuje wszystko dla wszystkich duszków lub tylko określony skrypt (w zależności od elementu wybranego z listy). określa co ma robić klon kiedy zostanie utworzony. tworzy klona. usuwa klona.
KATEGORIA CZUJNIKI Kategoria CZUJNIKI zawiera bloczki związane z rozpoznawaniem sytuacji zachodzących na scenie, dotyczących m.in. duszków. blok opis zwraca wartość true jeśli duszek dotyka innego duszka, krawędzi lub wskaźnika myszy. zwraca wartość true jeśli duszek dotka określonego koloru. zwraca wartość true jeśli pierwszy kolor dotyka drugiego koloru. wskazuje aktualną odległość danego duszka od elementu wybranego z listy rozwijanej. wyświetla w dymku tekst wpisany w pole edycyjne oraz okienko na scenie z polem edycyjnym umożliwiającym wprowadzenie odpowiedzi. odpowiedź użytkownika, jako wynik działania bloku Zapytaj i czekaj. Włączenie znacznika po lewej stronie powoduje wyświetlanie podanej odpowiedzi na scenie.
sprawdzenie, czy klawisz wybrany z listy rozwijanej został naciśnięty. sprawdzenie, czy został wciśnięty lewy klawisz myszy. podanie aktualnej wartości x współrzędnej kursora myszy. podanie aktualnej wartości y współrzędnej kursora myszy. podaje głośność (od 1 do 100) dźwięków wykrytych przez mikrofon komputerowy. wyliczanie, ile ruchu lub kierunku jest aktualnie w obrazie wideo dla sceny lub duszka. obsługa kamery. ustawianie przezroczystości kamery w procentach. podanie wartości licznika czasu w sekundach zerowanie stopera. podanie atrybutów duszka lub sceny.
wyświetlenie na scenie np. aktualnego miesiąca. wskazanie liczby dni od roku 2000. wskazanie nazwy użytkownika.
KATEGORIA WYRAŻENIA Kategoria WYRAŻENIA zawiera bloczki podstawowych działań arytmetycznych, operacji logicznych oraz funkcji zarówno arytmetycznych jak i na tekstach. blok opis operacje arytmetyczne: dodawanie, odejmowanie, mnożenie i dzielenie. losowanie liczb z podanego zakresu. Porównania: mniejsze, równe, większe. budowanie wyrażeń logicznych: koniunkcja (i) obydwa warunki są prawdziwe alternatywa (lub) jeden z warunków jest prawdziwy negacja (nie) zaprzeczenie. łączenie dwóch napisów w jeden. wskazanie litery na określonej pozycji w ciągu znaków wskazanie długości ciągu znaków.
wskazanie modulo - reszty z dzielenia pierwszego argumentu przez drugi. wskazanie wartości, którą jest zaokrąglony argument do najbliższej liczby całkowitej. komponenty funkcji.
KATEGORIA WIĘCEJ BLOKÓW Kategoria WIĘCEJ BLOKÓW umożliwia tworzenie i definiowanie własnych bloków. Gra Zgadywanie liczby
Zadania z rozwiązaniami numer Z1 Z2 zadanie Ustaw nową scenę dla duszka. Scenę Blue sky wybierz z bazy Scratch. Następnie usuń duszka kotka. Utwórz dwa nowe duszki Ball oraz Paddle (wybierz duszki z biblioteki Scratch) Z3 Napisz program dla duszka Ball. Utwórz następujące polecenie: jeśli zostanie naciśnięta spacja pozycja duszka powinna przyjąć x = -4 oraz y = 175. Z4 Napisz program dla duszka Ball. Kierunek duszka powinien zostać ustawiony na 45. Duszek powinien zawsze przesuwać się o 15 kroków a jak dotrze do krawędzi planszy powinien się odbić. Z5 Z6 Utwórz zmienną o nazwie score Napisz program dla duszka Ball. Zawsze gdy duszek dotknie np. koloru brązowego w scenie Blue sky, score powinno zmienić się o -5 a potem gra powinna się zatrzymać. Z7 Z8 Napisz program dla duszka Ball. Zawsze gdy duszek dotknie paddle, score powinien się zmienić o 1, kolor o 25. Dodatkowo powinien zagrać się dźwięk i duszek powinien się obrócić o 180 stopni. Następnie duszek powinien sekundę poczekać. Napisz program dla duszka Paddle. Zawsze gdy kliknięta jest zielona flaga duszek powinien iść do wskaźnika myszy. Rozwiązania zadań Zadanie 1 Klikamy Scena Klikamy zakładkę tła Klikamy bazę obrazków i wybieramy tło Blue Sky. Klikamy prawym przyciskiem myszy na duszka kotka i usuwamy go.
Zadanie 2 Klikamy znaczek duszka i wybieramy duszki Ball i Paddle z bazy danych Scratch Zadanie 3 Szukamy poniższych bloków i przenosimy je na pole Skrypty Zadanie 4 Szukamy poniższych bloków i przenosimy je na pole Skrypty
Zadanie 5 W Skryptach w zakładce Dane klikamy Utwórz zmienną i nazywamy ją score Po utworzeniu zmiennej pojawią się jej parametry:
Zadanie 6 Szukamy poniższych bloków i przenosimy je na pole Skrypty Zadanie 7 Szukamy poniższych bloków i przenosimy je na pole Skrypty Zadanie 8 Klikamy duszka Paddle. Następnie szukamy poniższych bloków i przenosimy je na pole Skrypty. Stworzyliśmy w ten sposób grę.