Scenariusz
Temat
Duszek przechodzi przez jezdnię
Etap edukacyjny
Drugi
Podstawa programowa
Klasy IV‑VI
I. Rozumienie, analizowanie i rozwiązywanie problemów. Uczeń:
2) formułuje i zapisuje w postaci algorytmów polecenia składające się na:
c) sterowanie robotem lub obiektem na ekranie;
3) w algorytmicznym rozwiązywaniu problemu wyróżnia podstawowe kroki: określenie problemu i celu do osiągnięcia, analiza sytuacji problemowej, opracowanie rozwiązania, sprawdzenie rozwiązania problemu dla przykładowych danych, zapisanie rozwiązania w postaci schematu lub programu.
II. Programowanie i rozwiązywanie problemów z wykorzystaniem komputera i innych urządzeń cyfrowych. Uczeń:
1) projektuje, tworzy i zapisuje w wizualnym języku programowania:
a) pomysły historyjek i rozwiązania problemów, w tym proste algorytmy z wykorzystaniem poleceń sekwencyjnych, warunkowych i iteracyjnych oraz zdarzeń,
b) prosty program sterujący robotem lub innym obiektem na ekranie komputera;
Czas
45 minut
Cel ogólny
Tworzy skrypt wykorzystujący instrukcje warunkowe.
Cele szczegółowe
1. Definiuje nowe zmienne.
2. Potrafi zmienić tło w edytorze graficznym.
3. Potrafi zastosować instrukcje warunkowe.
Efekty uczenia
Uczeń:
- buduje skrypt wykorzystujący instrukcje warunkowe,
- definiuje nowe zmienne.
Metody kształcenia
1. Dyskusja.
2. Praca z komputerem.
Formy pracy
1. Praca indywidualna.
2. Praca grupowa.
Etapy lekcji
Wprowadzenie do lekcji
Wprowadź poniższy krótki kod i zaobserwuj, jak porusza się duszek.
Wytłumacz, co oznacza x i y we wprowadzonych komendach.
[Ilustracja 1]
Realizacja lekcji
Twoim zadaniem jest stworzenie animacji, w której duszek będzie przechodził przez jezdnię, gdy na sygnalizatorze zapali się zielone światło.
Do tworzenia takiej animacji przydatna jest umiejętność dokładnego określania położenia duszka oraz tworzenie skryptów, w których po spełnieniu określonych warunków wykonuje czynności, które dla niego zaplanowaliśmy. W tym wypadku będzie to przejście duszka‑kotka po zmianie światła sygnalizatora na zielone.
Położenie duszka na scenie:
Scena w programie Scratch opisana jest przez współrzędne, dlatego każdemu elementowi znajdującemu się na scenie przypisana jest para liczb czyli współrzędne.
Możesz je zobaczyć w prawym dolnym rogu sceny – gdy przesuwasz po scenie kursor myszy, jest wyświetlana jego aktualna pozycja. Pozycję w poziomie określa x, a w pionie y.
Scena, po której porusza się duszek, ma stałe wymiary: szerokość wynosi 480 punktów, a jej wysokość 360 punktów.
Przydatne do projektowania różnych skryptów jest tło xy‑grid, które możesz pobrać z biblioteki teł. Ułatwia ono rozmieszczenie różnych elementów, stosownie do naszych pomysłów.
[Ilustracja 2]
Tworzenie tła:
Animację z przechodzeniem duszka przez ulicę można realizować na wiele sposobów. W tym przykładzie zobaczysz, jak można wykorzystać tło, aby stworzyć sygnalizator świetlny, na którym zmieniają się kolory świateł z zielonego na czerwony.
Aby stworzyć sygnalizator świetlny stojący przy przejściu dla pieszych zostało wykorzystane tło Urban2 z biblioteki teł. W programie graficznym Scratcha został w nim dodany sygnalizator. Tak zmienione tło zostało skopiowane. Na jednej kopii został dodany zielony kolor do światła sygnalizatora, na drugiej czerwony. Te tła zostaną potem wykorzystane w animacji.
Jaki był efekt tych zmian możesz zobaczyć na pokazie slajdów.
[Slideshow]
Polecenie 1
Wykonaj własne plansze z sygnalizatorem. Możesz użyć gotowego tła z biblioteki teł lub samodzielnie wykonać go od podstaw w dowolnym programie graficznym.
Polecenie 2
Masz już gotowe plansze z sygnalizatorem. Stwórz skrypt, który będzie zmieniał światła na sygnalizatorze w określonym odstępie czasu. Jako pierwsze niech zapali się światło zielone, a po 6 s zmieni na światło czerwone. Skrypt ma być uruchomiony przyciskiem zielonej flagi. Światła mają zmieniać się tak długo, aż wyłączony zostanie skrypt za pomocą czerwonego przycisku.
Rozwiązanie:
[Ilustracja 3]
Polecenie 3
Masz już gotowe skrzyżowanie, na którym działa sygnalizacja. Umówmy się, że jeden sygnalizator na razie będzie obsługiwał całe skrzyżowanie.
Zbuduj skrypt, który ustawi duszka przed przejściem. Duszek ma za zadanie przejść przez pierwsze i drugie przejście dla pieszych. Na tym etapie nie martw się, czy duszek przechodzi na czerwonym czy zielonym świetle.
Wskazówki:
Aby ustawić duszka przed przejściem, potrzebujesz znaleźć współrzędne punktu, w którym duszek zacznie swój ruch. Niech duszek startuje zawsze z tej samej pozycji (np. niech patrzy na prawo).
Następnie obróć duszka w kierunku przejścia. Po przejściu duszek znów powinien obrócić się w stronę kolejnego przejścia.
Rozwiązanie:
[Ilustracja 4]
Tworzenie własnych bloczków:
Czasem zdarza się, że chcemy w skrypcie powtórzyć jakiś układ poleceń. Każda zmiana, którą chcemy wykonać wymaga starannego dodania informacji w wielu miejscach. Można tego uniknąć tworząc nową zmienną, w której tylko raz będziemy zmieniać ustawienia.
Aby stworzyć nową zmienną należy w kategorii Więcej bloków kliknąć w przycisk Nowy blok. Nadajemy mu nazwę. Następnie przesuwamy do niego te klocki, które zwykle używamy w kilku miejscach. W starym skrypcie, w miejscu usuniętych klocków wstawiamy nowy klocek, który zawiera wszystkie polecenia.
Przypatrz się poniższemu rysunkowi. Pokazane jest na nim, w jaki sposób możemy zastosować stworzyć nowy blok.
[Ilustracja 5]
Polecenie 5
Duszek potrafi już przechodzi przez skrzyżowanie, ale robi to nieprzepisowo, nie czekając na zielone światło.
Zmodyfikuj skrypt tak, by duszek przechodził na drugą stronę, gdy będzie się palić światło zielone. Gdy światło jest czerwone, duszek musi poczekać na jego zmianę.
Wskazówka:
Pomocny w rozwiązaniu problemu jest klocek instrukcji warunkowej. Polecenia w nim zawarte, zostaną wykonane jedynie wtedy, gdy postawiony warunek logiczny jest prawdziwy. Warunki budujemy z bloczków z kategorii Czujniki i Wyrażenia.
[Ilustracja 6]
Jeżeli chcemy, by duszek przeszedł przez skrzyżowanie na zielonym świetle, a czekał na czerwonym świetle możemy to rozwiazać w sposób pokazany rysunku (używając zdefiniowanej wcześniej zmiennej).
[Ilustracja 7]
Przykładowe rozwiązanie:
[Ilustracja 8]
Podsumowanie lekcji
Przydatne w rozwiązywaniu różnych problemów są instrukcje warunkowe. W programie Scratch można również definiować własne zmienne.