I. Understanding, analyzing and solving problems. The student:
2) formulates and writes in the form of algorithms commands consisting of:
c) controlling the robot or object on the screen;
3) distinguishes basic steps in algorithmic problem solving: determination of the problem and goal to be achieved, analysis of the problem situation, developing a solution, checking the problem solution for example data, writing the solution in the form of a diagram or program.
II. Programming and solving problems with the use of computer and other digital devices. The student:
1) designs, creates and writes in a visual programming language:
a) ideas of stories and solutions to problems, including simple algorithms using sequential, conditional and iterative commands and events, b) a simple program that controls a robot or other object on the computer screen;
Your task is to create an animation in which the sprite will cross the road when the traffic lighttraffic lighttraffic light turns green.
To create such animation, it is useful to know how to determine the positionpositionposition of the sprite accurately and to create scripts in which, after meeting certain conditions, the sprite performs actions that we planned for it. In this case, the sprite‑cat will cross the road after the traffic light turns green.
Sprite position on the stage:
The stage in Scratch is described by coordinatescoordinatescoordinates; therefore each element on the stage is assigned a pair of numbers or coordinates.
You can see them in the bottom right corner of the stage - when you move the mouse pointer on the stage, its current positionpositionposition is displayed. The horizontal position is x and the vertical position is y.
The size of the stage on which the sprite moves is fixed: the width is 480 points, and the height is 360 points.
Useful for the design of various scripts is the xy‑grid backdrop, which you can download from the Backdrop Library. It facilitates the placement of various elements, according to our ideas.
[Illustration 2]
Creating a backdrop:
Animation with the sprite crossing the roadroadroad can be carried out in many ways. In this example, you'll see how you can use the backdrop to create a traffic light that changes the colours of lights from green to red.
To create a traffic lighttraffic lighttraffic light standing at the pedestrian crossingpedestrian crossingpedestrian crossing, the Urban2 backdrop from the Backdrop Library was used. In the Scratch graphic editor, the traffic light was added. The changed backdrop was duplicated. On one copy a green colour was added to the traffic light, on the second - red. These backdrops will then be used in animation.
What was the effect of these changes you can see on the slideshow.
You already have ready boards with a traffic light. Create a script that will change the lights within a specified time interval. Switch on the green light first, and after 6 seconds it will turn red. The script should be started with the green flag button. The lights are changing until the script is switched off using the red button.
Solution:
[Illustration 3]
Task 3
You already have a crossing where the traffic lights work. Let's agree that one traffic lighttraffic lighttraffic light will serve the whole crossing for the time being.
Build a script that will place the sprite in front of the pedestrian crossing. The sprite task is to go through the first and the second pedestrian crossing. At this stage, do not worry if the sprite passes red or green light.
Tips:
To place the sprite in front of the pedestrian crossingpedestrian crossingpedestrian crossing, you need to find the coordinatescoordinatescoordinates of the point at which the sprite will start moving. Let the sprite always start from the same position (e.g. let it look right).
Then turn the sprite in the direction of the passage. After crossing the sprite should turn again towards the next passage.
Solution:
[Illustration 4]
Creating your own blocks:
Sometimes it happens that we want to repeat a series of commands in the script. Every change you want to make requires careful addition of information in many places. This can be avoided by creating a new variable where we will change the settingssettingssettings only once.
To create a new variable, in the More Blocks category, click on the Make a Block button. Give it a name. Then we attach other blocks to it, which we usually use in several places. In the old script, in place of the removed blocks insert a new block that contains all the commands.
Take a look at the drawing below. It shows how we can create a new block.
[Illustration 5]
Task 5
The sprite can already pass through the crossing, but it does so incorrectly, without waiting for the green light.
Modify the script in a way that the sprite will cross the roadroadroad on the green light. When the light is red, the sprite must wait for the light to change.
Tip:
A block of conditional instructions is helpful in solving the problem. The commands contained therein will only be executed if the logical condition is true. We build conditions from blocks from the Sensing and Operators category.
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).
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.
m1bb3f12b9c1a7ae4_1528449000663_0
Duszek przechodzi przez jezdnię
m1bb3f12b9c1a7ae4_1528449084556_0
Drugi
m1bb3f12b9c1a7ae4_1528449076687_0
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;
m1bb3f12b9c1a7ae4_1528449068082_0
45 minut
m1bb3f12b9c1a7ae4_1528449523725_0
Tworzy skrypt wykorzystujący instrukcje warunkowe.
Wprowadź poniższy krótki kod i zaobserwuj, jak porusza się duszek.
Wytłumacz, co oznacza x i y we wprowadzonych komendach.
[Ilustracja 1]
m1bb3f12b9c1a7ae4_1528446435040_0
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]
m1bb3f12b9c1a7ae4_1528450119332_0
Przydatne w rozwiązywaniu różnych problemów są instrukcje warunkowe. W programie Scratch można również definiować własne zmienne.