Na tej lekcji nauczysz się, jak rozwiązywać problem krok po kroku, korzystając z planu oraz danych, które są na nim zapisane.
Twoim zadaniem będzie wyznaczenie najszybszej trasy, a następnie zbudowanie w Scratchu prostego skryptu, który policzy czas przejścia wybranej drogi.
Treść zadania
Organizujesz imprezę urodzinową.
Zanim przyjdą goście, musisz:
- wyjść z domu,
- odwiedzić cukiernię,
- pójść do sklepu z balonami,
- odwiedzić wypożyczalnię kostiumów,
- wrócić do domu.
Na planie zaznaczone są:
- miejsca, które musisz odwiedzić,
- drogi między nimi,
- czasy przejścia poszczególnych odcinków.
Twoim celem jest znalezienie najszybszej trasy, spełniającej wszystkie warunki.

Ważne zasady
Podczas planowania trasy przyjmij, że:
- zaczynasz i kończysz trasę pod domem,
- nie możesz wrócić do domu przed odwiedzeniem wszystkich miejsc,
- poruszasz się tylko drogami zaznaczonymi na planie,
- kolejność odwiedzania miejsc jest dowolna,
- każdego miejsca możesz odwiedzić tylko raz,
- nie możesz przejść dwa razy tą samą drogą.
Krok 1. Formułujemy cel i wybieramy dane

Celem jest wyznaczenie najkrótszej trasy, która:
- zaczyna się i kończy w domu,
- prowadzi przez wszystkie wymagane miejsca.

Na planie widzisz wiele informacji, ale nie wszystkie są potrzebne.
Dlatego warto:
- wypisać tylko miejsca, które musisz odwiedzić,
- zapisać czasy przejścia między nimi,
- uprościć plan do postaci schematu połączeń.
(Jeśli nauczyciel wyświetla schemat – porównaj go z planem i zwróć uwagę na czasy przejścia).

Krok 2. Opracowujemy możliwe rozwiązania
Zauważ, że po wyjściu z domu:
- możesz najpierw iść do jednego z miejsc,
- a potem masz tylko dwie możliwości dalszej drogi.
Jeśli zapiszesz wszystkie możliwe kolejności odwiedzania miejsc, okaże się, że:
- istnieje kilka różnych tras,
- nie każda z nich spełnia warunki zadania,
- część tras trzeba odrzucić (np. przez powtórzenie drogi).
Twoim zadaniem jest:
- sprawdzić każdą poprawną trasę,
- obliczyć jej czas,
- wybrać najkrótszą.
Krok 3. Budujemy skrypt liczący czas trasy
Aby ułatwić obliczenia, zbudujesz w Scratchu skrypt liczący czas przejścia.
Zmienne w programie
W programie użyjesz dwóch zmiennych:
- Czas_odcinka – przechowuje czas jednego odcinka drogi,
- Czas_trasy – przechowuje łączny czas całej trasy.
Po uruchomieniu programu:
- obie zmienne powinny mieć wartość 0,
- po każdym odcinku Czas_trasy zwiększa się o wartość Czas_odcinka.
Budujemy skrypt w Scratchu
- Otwórz Scratch i wybierz dowolnego duszka.
- Utwórz zmienne Czas_odcinka i Czas_trasy.
- Po kliknięciu zielonej flagi:
- ustaw obie zmienne na 0.
- Użyj bloku zapytaj i poproś użytkownika o podanie czasu przejścia odcinka.
- Dodaj podany czas do zmiennej Czas_trasy.
- Powtarzaj działanie dla kolejnych odcinków trasy.
- Program działa do momentu zatrzymania.
(Schemat bloków możesz zobaczyć na ilustracji prezentowanej przez nauczyciela lub na ekranie).
Zapis projektu
Po zakończeniu pracy:
- zapisz projekt w Teczce ucznia,
- nadaj plikowi nazwę dodawanie_czasów.
