Dla nauczyciela
Autor: Maurycy Gast
Przedmiot: Informatyka
Temat: Sortowanie szybkie – zadania maturalne
Grupa docelowa:
Szkoła ponadpodstawowa, liceum ogólnokształcące, technikum, zakres rozszerzony
Podstawa programowa:
Kształtowane kompetencje kluczowe:
kompetencje cyfrowe;
kompetencje osobiste, społeczne i w zakresie umiejętności uczenia się;
kompetencje matematyczne oraz kompetencje w zakresie nauk przyrodniczych, technologii i inżynierii.
Cele operacyjne (językiem ucznia):
Przeanalizujesz przykładowe zadania maturalne wykorzystujące algorytm sortowania szybkiego zapisany za pomocą pseudokodu.
Zaimplementujesz algorytm sortowania szybkiego przy rozwiązywaniu różnych problemów.
Rozwiążesz przykładowe zadania maturalne, stosując algorytm quick sort.
Strategie nauczania:
konstruktywizm;
konektywizm.
Metody i techniki nauczania:
dyskusja;
rozmowa nauczająca z wykorzystaniem multimedium i ćwiczeń interaktywnych;
ćwiczenia praktyczne.
Formy pracy:
praca indywidualna;
praca w parach;
praca w grupach;
praca całego zespołu klasowego.
Środki dydaktyczne:
komputery z głośnikami, słuchawkami i dostępem do internetu;
zasoby multimedialne zawarte w e‑materiale;
tablica interaktywna/tablica, pisak/kreda;
oprogramowanie dla języka C++, w tym kompilator GCC/G++ 4.5 (lub nowszej wersji) i Code::Blocks 16.01 (lub nowszej wersji), Orwell Dev‑C++ 5.11 (lub nowszej wersji) lub Microsoft Visual Studio;
oprogramowanie dla języka Java SE 8 (lub nowszej wersji), w tym Eclipse 4.4 (lub nowszej wersji);
oprogramowanie dla języka Python 3 (lub nowszej wersji), w tym PyCharm lub IDLE.
Przebieg lekcji
Przed lekcją:
Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Sortowanie szybkie – zadania maturalne”. Uczniowie zapoznają się z treściami w sekcji „Przeczytaj” w kontekście programowania.
Faza wstępna:
Uczniowie metodą burzy mózgów przypominają sobie najważniejsze informacje dotyczące sortowania szybkiego.
Wyświetlenie przez nauczyciela tematu i celów lekcji. Określenie wiążących dla uczniów kryteriów sukcesu.
Rozpoznanie wiedzy uczniów. Nauczyciel zadaje uczniom pytania dotyczące ich aktualnego stanu wiedzy w obszarze poruszanego tematu i programowania, np.
– na czym polega algorytm sortowania szybkiego?
– co to jest pivot?
– co to jest iteracja pętli?
– jak nazywamy zwiększenie wartości zmiennej o jeden?
Chętni uczniowie udzielają na nie odpowiedzi.
Faza realizacyjna:
Praca z tekstem. Jeżeli przygotowanie uczniów do lekcji jest niewystarczające, nauczyciel prosi o indywidualne zapoznanie się z treścią zawartą w sekcji „Przeczytaj”. Każdy uczestnik zajęć podczas cichego czytania wynotowuje najważniejsze kwestie poruszane w tekście.
Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Prezentacja multimedialna”. Uczniowie wspólnie zapoznają się z jego treścią. Następnie wykonują zadanie nr 2 w wybranym przez siebie języku programowania.
Ćwiczenia umiejętności. Uczniowie wykonują zadanie nr 3 z sekcji „Sprawdź się”. Ich zadaniem jest napisanie programu, który uporządkuje dane dotyczące skoków, a następnie poda trzy najlepsze wyniki. Na koniec program wypisze oznaczenia trzech skoczków, którzy wykonali te skoki.
Zadania realizują w jednym z dostępnych języków programowania.
Faza podsumowująca:
Nauczyciel ponownie wyświetla na tablicy temat lekcji zawarty w sekcji „Wprowadzenie” i inicjuje krótką rozmowę na temat zrealizowanych celów (czego uczniowie się nauczyli).
Praca domowa:
Uczniowie implementują algorytmy z zadań 1.1 i 1.2 z sekcji „Przeczytaj” w wybranym języku programowania.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka C++.
Oficjalna dokumentacja techniczna dla kompilatora GCC/G++ 4.5 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania Code::Blocks 16.01 (lub nowszej wersji), Orwell Dev‑C++ 5.11 (lub nowszej wersji) lub Microsoft Visual Studio.
Oficjalna dokumentacja techniczna dla języka Java SE 8 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania Eclipse 4.4 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla języka Python 3 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania PyCharm lub IDLE.
Wskazówki metodyczne:
Treści w sekcji „Przeczytaj” można wykorzystać jako podsumowanie i utrwalenie wiedzy uczniów.