Dla nauczyciela
Autor: Jakub Tarkowski
Przedmiot: Informatyka
Temat: Wprowadzenie do teorii grafów 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):
Zaimplementujesz rozwiązania prostych problemów dotyczących teorii grafów w języku Python.
Zapoznasz się z przykładową implementacją grafu w języku Python.
Zaimplementujesz klasę grafu, zawierającą wszystkie potrzebne dane na temat wierzchołków i krawędzi.
Rozwiążesz problemy związane z sąsiedztwem wierzchołków grafów.
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ą:
Uczniowie wyszukują informacje na temat problemów, w których rozwiązaniu można zastosować algorytmy grafowe.
Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Wprowadzenie do teorii grafów w języku Python”. Nauczyciel prosi uczniów o zapoznanie się z treściami w sekcji „Przeczytaj”.
Faza wstępna:
Uczniowie odpowiadają na pytanie o to, w jakich sytuacjach może mieć zastosowanie graf.
Nauczyciel wyświetla i odczytuje temat lekcji oraz cele zajęć. Prosi uczniów o sformułowanie kryteriów sukcesu.
Rozpoznanie wiedzy uczniów. Uczniowie tworzą pytania dotyczące tematu zajęć, na które odpowiedzą w trakcie lekcji.
Faza realizacyjna:
Praca z tekstem. Nauczyciel ocenia, na podstawie informacji na platformie, stan przygotowania uczniów do zajęć. Jeżeli jest ono niewystarczające, prosi wybraną osobę o przedstawienie najważniejszych informacji z sekcji „Przeczytaj”.
Uczniowie analizują przykład z sekcji „Przeczytaj”. Następnie indywidualnie wykonują Ćwiczenie 1 z tej sekcji. Nauczyciel sprawdza poprawność rozwiązań.Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Prezentacja multimedialna”. Uczniowie wspólnie zapoznają się z treścią zawartego w niej multimedium. Analizują przedstawiony program, a następnie testują go na swoich komputerach. Zapisują ewentualne problemy i pytania. Po czym następuje dyskusja, w trakcie której nauczyciel wyjaśnia niezrozumiałe treści.
W kolejnym etapie uczniowie dobierają się w pary i wykonują ćwiczenia nr 1–5 z sekcji „Sprawdź się”. Następnie konsultują swoje rozwiązania z inną parą uczniów i ustalają jedną wersję odpowiedzi.
Faza podsumowująca:
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.
Wybrany uczeń podsumowuje zajęcia z programowania w Pythonie, zwracając uwagę na nabyte umiejętności.
Praca domowa:
Uczniowie wykonują Polecenie 1 z sekcji „Przeczytaj”.
Uczniowie wykonują Ćwiczenie 6 z sekcji „Sprawdź się”.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka Python 3 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania PyCharm lub IDLE.
Robin J. Wilson, Wprowadzenie do teorii grafów, PWN, Warszawa 2007.
Wskazówki metodyczne:
Uczniowie mogą wykorzystać treści w sekcjach: „Przeczytaj”, „Prezentacja multimedialna”, „Sprawdź się” jako materiał do lekcji powtórkowej.