Wprowadzenie do zmiennych w programowaniu

Transkrypt

Wprowadzenie do zmiennych w programowaniu
Wprowadzenie
do zmiennych
w programowaniu
Opis
Rozpoznawanie i analiza wartości zmiennych jest ważną umiejętnością podczas nauki
programowania. W trakcie tej lekcji uczniowie nauczą się, jak zmienne mogą być używane
w programowania i w jaki sposób ułatwiają nam tworzenie kodów.
Cele
●
Rozpoznawanie zmiennych
●
Zrozumienie, że zmienna to wartość, która ulega zmianie.
●
Budowanie kodów z wykorzystaniem zmiennej
Wielkość grupy
2 - 5 uczniów (opcjonalnie zabawy w zespole całej klasy)
Klasy docelowe
4 - 6 szkoły podstawowej
Wymagany czas
2 jednostki lekcyjne
Co będzie potrzebne:
Roboty i akcesoria: Dash, Dot
Pomoce dydaktyczne:
● Tablety
● Prezentacja "Wprowadzenie do zmiennych"
● Projektor do wyświetlenia kodów w Blockly lub wydruki tych kodów
● 2 pudełka dla każdej grupy
● Przedmioty do użycia jako liczydło, np. szklane kulki, spinacze lub kawałki papieru
Załączniki do lekcji (do pobrania):
● Załącznik 1 – zmienne w kodzie 1
● Załącznik 2 – zmienne w kodzie 2
● Załącznik 3 - zmienne w kodzie 3
Podstawa programowa:
MATEMATYKA
Cele kształcenia – wymagania ogólne
IV. Rozumowanie i tworzenie strategii. Uczeń prowadzi proste rozumowanie składające się
z niewielkiej liczby kroków, ustala kolejność czynności (w tym obliczeń) prowadzących do rozwiązania
problemu, potrafi wyciągnąć wnioski z kilku informacji podanych w różnej postaci.
Treści nauczania – wymagania szczegółowe:
2. Działania na liczbach naturalnych.
Uczeń:
1) dodaje i odejmuje w pamięci liczby naturalne
ZAJĘCIA KOMPUTEROWE
Cele kształcenia – wymagania ogólne
IV. Rozwiązywanie problemów i podejmowanie decyzji z wykorzystaniem komputera
Treści nauczania – wymagania szczegółowe:
1. Bezpieczne posługiwanie się komputerem i jego oprogramowaniem.
Uczeń:
2) odczytuje i prawidłowo interpretuje znaczenie komunikatów wysyłanych przez programy;
3) prawidłowo zapisuje i przechowuje wyniki swojej pracy w komputerze i na nośnikach
elektronicznych, a następnie korzysta z nich;
5. Rozwiązywanie problemów i podejmowanie decyzji z wykorzystaniem komputera. Uczeń:
1) za pomocą ciągu poleceń tworzy proste motywy lub steruje obiektem na ekranie;
2) uczestniczy w pracy zespołowej, porozumiewa się z innymi osobami podczas realizacji wspólnego
projektu, podejmuje decyzje w zakresie swoich zadań i uprawnień.
Edycja pilotażowa nowej podstawy komputerowej dla II poziomu edukacyjnego:
I. Rozumienie, analizowanie i rozwiązywanie problemów.
Uczeń:
1) Tworzy i porządkuje w postaci sekwencji (liniowo) lub drzewa (nieliniowo) informacje, takie jak:
obrazki i teksty ilustrujące wybrane sytuacje, opisy rzeczy różnych rodzajów (np. zwierząt, kwiatów),
planuje w ten sposób późniejsze ich zakodowanie za pomocą komputera.
2) Formułuje w postaci algorytmów polecenia składające się na: znane uczniom algorytmy z różnych
przedmiotów, np. matematyczne: pisemnego dodawania, odejmowania, mnożenia,
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 pomysły historyjek, rozwiązania
problemów i proste algorytmy z wykorzystaniem poleceń sekwencyjnych, iteracyjnych i warunkowych
oraz zdarzeń jednoczesnych.
2) Testuje na komputerze swoje programy pod względem zgodności z przyjętymi założeniami
o efektach ich działania, objaśnia przebieg działania programów.
Przebieg lekcji:
Lekcja 1: Wprowadzenie do zmiennych, nauka zastosowania zmiennych w aplikacji
(45 min).
Lekcja 2: Wykorzystanie zmiennych w aplikacji Blockly, programowanie własnych
pomysłów (45 min).
LEKCJA 1
Wprowadzenie do zmiennych.
Wstęp: wprowadzimy ucznia w pojęcie zmiennej, zaprezentujemy jak można
zmieniać zmienną, jakie bloczki są odpowiedzialne za zmienne. Przeprowadzimy
sporo ćwiczeń praktycznych, które w łatwy i przyjazny sposób pozwolą się
zaznajomić uczniom z tą tematyką.
Zadanie dla uczniów:
● przygotuj różnego koloru piłeczki/ opcjonalnie karteczki
● postaw przed uczniami pudełko i zacznij wrzucać do niego piłeczki zaczynając
od jednego z kolorów, następnie kolejny
● w trakcje wykonywania czynności zapytaj: Ile piłeczek jest w środku?
● uczniowie będą podawać różne liczby, zapytaj ich: Ile piłeczek było już
w pudełku przed wrzuceniem?
● na tablicy zanotuj w punkcie pierwszym “wartość początkową” i objaśnij
uczniom, że jest to ilość piłek znajdująca się w pudełku przed rozpoczęciem
naszej zabawy
● zapytaj: Czy wartość początkowa może wynosić 0? i co to oznacza w naszym
przypadku (pudełko było puste)
● wyciągnij raz jeszcze wszystkie piłeczki, pokaż że pudełko jest puste i zapytaj
ile wynosi wartość początkowa (spodziewana odpowiedź = 0)
● ponownie wrzucaj piłeczki i poproś, aby uczniowie liczyli na głos ile piłeczek
jest już w pudle
● zadaj pytanie: Czy ilość piłeczek w pudełku się zmienia?
● zanotuj na tablicy w punkcie drugim “zmienne” i wyjaśnij, że teraz są to nasze
piłeczki
● kolejne pytanie skierowane do uczniów: Co może być naszymi zmiennymi?
(naprowadź uczniów, że mogą to być dowolne przedmioty, ale również
i liczby)
● wrzuć wszystkie piłki do pudełka i poproś, aby zgadli jaki kolor piłeczki
zostanie wyciągnięty
● jaką mają pewność, że będzie teraz kolor żółty?
● co musieliby zrobić, aby mieć pewność, że teraz będzie żółty? (naprowadź
uczniów, że może dobrym rozwiązaniem byłoby przygotowanie takiej ilości
pudełek, ile jest kolorów i wrzucać piłeczki w danym kolorze tylko do jednego
pudełka)
● w punkcie trzecim na tablicy zapisz “rodzaje zmiennych”, co oznacza, że
takich pudełek może być wiele i to będą nasze rodzaje.
Zaprezentujemy teraz uczniom jak to działa w aplikacji Blockly. Przygotuj wcześniej
krótki program dla Dasha i Dota. Prezentując ekran tabletu pokazuj, jak zmienna np.
”pomarańcza” ulega zmianie i co się dzieje, jak zmienia swoją wartość.
Po takiej prezentacji pokaż uczniom, że nasze pudełka w programie to odpowiednie
owoce, np. banany, czereśnie itp. Ilość piłek w naszych pudełkach to wartość
liczbowa odpowiadająca w danym momencie konkretnemu owocu. Podkreśl, że
może ona ulegać zmianie, tak jak ilość piłek w pudełkach.
Po przeprowadzonym wstępie otwórz prezentację "Wprowadzenie do zmiennych".
Użyj tej prezentacji jako pomocy w uświadomieniu uczniom czym są zmienne i jak
można je wykorzystać. Uczniowie mogą uznać za przydatne podzielenie się
na grupy, aby łatwiej było korzystać z tabletów. W ten sposób będą mogli otworzyć
i sprawdzić każdy z nowych bloków pojawiających się w prezentacji.
Poniżej propozycja opisu poszczególnych slajdów i zwrócenie uwagi na istotne
elementy.
Slajd 2 - Czym jest zmienna:
Podkreśl koncepcję, że zmienna jest rodzajem pojemnika do przechowywania czymś jak pudełko. Można do niego wkładać i wyciągać z niego różne przedmioty,
ale żeby dowiedzieć się, co jest w środku, trzeba je otworzyć i spojrzeć do wnętrza.
Zmienna przyjmuje rożne wartości, w naszym przypadku to była różna liczba piłek.
Zmiennych w programie może być kilka. tak jak naszych pudełek.
Slajd 3 - Dlaczego warto używać zmiennych:
Każdy punkt tego slajdu zostanie wyjaśniony bardziej szczegółowo w dalszej części
prezentacji. Upewnij się, że uczniowie rozumieją, że ich kod (program) powinien być
łatwy do odczytania i edytowania nie tylko przez nich samych, ale również przez
innych uczniów. Inni uczniowie powinni być w stanie spojrzeć na ich kod i zrozumieć
to, co próbują zrobić. To jest właśnie to, co robią dobrzy programiści! Można
przyrównać uczniom, że rozsypane piłki zajmują więcej miejsca, niż powkładane
do pudełka.
Slajd 4 - Zmienne w aplikacji Blockly - wartość początkowa i rodzaje zmiennych
Ustawianie zmiennej: Pomyśl o tym w ten sposób: Nie wiem, co jest w pudełku. Ktoś
powie Ci, że włożył 3 klocki do pudełka. Co znajduje się teraz w pudełku? Nie wiesz!
Dlatego zawsze trzeba określić wartość początkową każdej zmiennej używanej
w aplikacji "Blockly". Wartość początkowa nie zawsze musi mieć wartość 0.
W aplikacji Blockly można ustawić 5 rożnych zmiennych, które odpowiadają różnym
rodzajom owoców.
Slajd 5, 6 - Zmienne w aplikacji Blockly - ustawianie zmiennych
Ustawianie zmiennej: zwróć uwagę uczniów, że są różne możliwości zmiany wartości
zmiennej poprzez ustawienie: konkretnej liczby, wartości innej zmiennej (czyli np.
kiedy banany = pomarańcze), wartości losowej (czyli rzut kostką) oraz konkretnej
reakcji Dasha.
Slajd 7, 8 - Zmienne w aplikacji Blockly - zmienianie zmiennej
Ilość piłek w naszym pudełku można zmieniać dodając piłkę, odejmując piłkę,
mnożąc ilość piłek w pudełku lub dzieląc je; na slajdzie widać wartości po konkretnej
zmianie.
Slajd 9 - Zmienne w aplikacji Blockly – zapętlanie zmiennych
Utworzenie pętli ze zmiennymi: Wyraźnie podkreśl, że pętla "Dopóki" (Repeat while)
oznacza "Wykonuj czynności określone w pętli, dopóki warunek nie zostanie
spełniony." W tym przypadku warunkiem jest "zmienna pomarańcza mniejsza niż 5."
Oznacza to, że kod w pętli będzie wykonywany tak długo [dopóki], aż zmienna
pomarańcza osiągnie wartość 5.
Uruchom program z uczniami, odliczając zmienną i generując sygnał dźwiękowy przy
rozpoczęciu każdej pętli. Zapisz liczbę na tablicy dla każdej pętli.
Rozwiązanie: sygnał dźwiękowy zabrzmi 5 razy w trakcie realizacji programu:
●
Zmienna „pomarańcza” równa 0.
●
Dźwięk, zmienna „pomarańcza” równa 1.
●
Dźwięk, zmienna „pomarańcza” równa 2.
●
Dźwięk, zmienna „pomarańcza” równa 3.
●
Dźwięk, zmienna „pomarańcza” równa 4.
●
Dźwięk, zmienna „pomarańcza” równa 5.
●
Zmienna „pomarańcza” nie jest już większa od 5 tylko równa jej. Stop!
Porozmawiaj z uczniami o tym, dlaczego zmienna może być przydatna w tej sytuacji.
●
Co stanie się, jeśli masz wiele pętli powtarzanych 5 razy i nagle chcesz je
wszystkie powtórzyć 6 razy? Trzeba by zmienić liczbę we wszystkich tych
pętlach. Jeśli zamiast tego użyjesz zmiennej, to wystarczy po prostu zmienić
wartość zmiennej w jednym miejscu i zadanie wykonane! To łatwe!
Slajdy 10, 11 - Zmienne w aplikacji Blockly – na przykładzie
Przykład wzorca: Jeżeli używasz tego przykładowego wzorca w charakterze wzorca
wprowadzającego, zwróć uwagę uczniów, że ten program jest wzorcem dźwięków
i mrugnięć użytym uprzednio. Uruchom program z uczniami, aby utrwalić ich
zrozumienie działania pętli. Zapisz wyniki pierwszych kilku pętli na tablicy.
Przykładowa tabela:
kolejne
powtórzenie
wartości
pomarańczy
wartości
banana
wydawane dźwięki
Porozmawiaj z uczniami o tym, jak wykonaliby zadanie bez zmiennych. Program
musiałby wyglądać następująco:
Oznacza to długie kodowanie. Natomiast dzięki zmiennym program stanie się o wiele
krótszy i dużo łatwiejszy do odczytania. Kiedy używasz zmiennych, inna osoba może
łatwo zobaczyć, co dzieje się w programie i dokonać zmian w jego strukturze.
Ćwiczenie uzupełniające:
1. Podziel klasę na grupy cztero- lub pięcioosobowe.
2. Rozdaj każdej grupie po dwa pudełka oraz karty pracy z kodami aplikacji
"Blockly", a także kilka przedmiotów, które będą służyć do zliczania
(np. spinacze, karteczki, piłeczki, nakrętki).
3. Uczniowie będą pracować z otrzymanymi kartami pracy, przy czym:
● Jeden lub dwóch uczniów w grupie będzie trzymać pudełko oznaczające daną
zmienną (pomarańcza, banan, itp.).
● Jeden z uczniów będzie odczytywać innym kod aplikacji "Blockly".
● Jeden z uczniów będzie udawać robota Dash i wykonywać kod.
● Pozostali uczniowie analizują kod programu krok po kroku.
4. Poinstruuj uczniów, aby zamieniali się rolami i kartami pracy.
LEKCJA 2
Zadania programistyczne.
Kiedy uczniowie rozumieją już, co oznaczają zmienne i jak można je wykorzystać
w aplikacji Blockly, zacznijmy kolejne zajęcia od zabawy przypominającej te zasady.
W zabawie będzie uczestniczyć cała klasa.
Zabawa nr 1. Zadania dla uczniów:
● wyznacz z klasy osobę, która będzie pierwszą zmienną
● wyznacz z klasy osobę, która będzie drugą zmienną
● wyznacz w klasie osobę, która będzie poruszać się jak robot, zgodnie
z programem
● wyświetl kod programu tak, aby cała klasa mogła go analizować wspólnie
(dwie propozycje kodów do zabawy są dostępne w załączniku Zabawa nr 1 –
przykładowe kody)
● uczniowie stają przy tablicy i oznaczają symbolami swoje zmienne, uczeńrobot jest przed tablicą
● osoby reprezentujące zmienne mają za zadanie zapisywanie kolejno swoich
wartości za każdym razem, gdy ulegnie ona zmianie
Przykład 1
Przykład 2
Uwaga: w przykładzie 2 obrót w prawo nigdy nie będzie wykonywalny, ponieważ
nigdy wartość pomarańczy nie będzie większa od wiśni. Pozostawmy to uczniom
do odkodowania.
Zabawa nr 2. Zadania dla uczniów:
Poproś uczniów o zapisanie poniższych kodów w aplikacji i przetestowanie, jaki
będzie efekt działania robota. Po sprawdzeniu wszystkich kodów, omów z uczniami,
jak działały roboty (jakie czynności wykonywały, ile razy je powtarzały). Na koniec
poproś o stworzenie własnego kodu z wykorzystaniem zmiennych i zaprezentowanie
pracy robota/robotów na forum klasy.
Poniższe przykłady możesz pobrać z załącznika Zabawa nr 2 – przykładowe kody.
Kod 1
Dźwięk “1” będzie dowolnym dźwiękiem
wgranym przez ucznia.
Kod 3
Kod 2

Podobne dokumenty