Dla nauczyciela
Autor: Adam Jurkiewicz
Przedmiot: Informatyka
Temat: Algorytm Knutha‑Morrisa‑Pratta w języku Python
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 metodę tworzenia tablicy częściowych dopasowań dla algorytmu KMP.
Zaimplementujesz funkcję realizującą wyszukiwanie wzorca w tekście za pomocą algorytmu KMP.
Rozwiążesz przykładowe zadania programistyczne z wykorzystaniem algorytmu KMP.
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 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ł: „Algorytm Knutha‑Morrisa‑Pratta w języku Python”. Uczniowie zapoznają się z treściami w sekcji „Przeczytaj”.
Faza wstępna:
Nauczyciel wyświetla temat i cele zajęć zawarte w sekcji „Wprowadzenie”. Następnie wspólnie z uczniami ustala kryteria sukcesu.
Faza realizacyjna:
Praca z tekstem. Jeśli przygotowanie uczniów do lekcji jest niewystarczające, nauczyciel prosi uczniów o zapoznanie się z sekcją „Przeczytaj”.
Następnie uczniowie wykonują polecenie 1. Chętna lub wybrana osoba przedstawia swoje rozwiązanie i wyjaśnia otrzymany rezultat. Pozostali uczniowie weryfikują poprawność rozwiązania lub przedstawiają alternatywne.Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Symulacja interaktywna”, czyta treść problemu 1. Uczniowie indywidualnie wypracowują swoje rozwiązania, a następnie porównują je z przedstawionym w prezentacji.
Ćwiczenie umiejętności. Uczniowie wykonują ćwiczenia nr 1 i 2 z sekcji „Sprawdź się”. Nauczyciel sprawdza poprawność wykonanych zadań, omawiając je wraz z uczniami.
Uczniowie wykonują w parach ćwiczenie 3 z sekcji „Sprawdź się”. Po zakończeniu zadania porównują swoje rozwiązanie z wynikiem innej grupy.
Faza podsumowująca:
Nauczyciel inicjuje dyskusję na temat praktycznego wykorzystania algorytmu KMP.
Nauczyciel wyświetla na tablicy temat lekcji i cele zawarte w sekcji „Wprowadzenie”. W kontekście ich realizacji podsumowuje przebieg zajęć, a także wskazuje mocne i słabe strony pracy uczniów.
Praca domowa:
Uczniowie wykonują polecenie 2 z sekcji „Symulacja interaktywna”.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka Python 3 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania PyCharm lub IDLE.
Wskazówki metodyczne:
Nauczyciel może wykorzystać multimedium w sekcji „Symulacja interaktywna” do pracy przed lekcją. Uczniowie zapoznają się z jego treścią i przygotowują do pracy na zajęciach w ten sposób, żeby móc samodzielnie rozwiązać zadania dołączone do e‑materiału „Algorytm Knutha‑Morrisa‑Pratta w języku Python”.