Autor: Adam Jurkiewicz

Przedmiot: Informatyka

Temat: Rekurencja w języku Python

Grupa docelowa:

Szkoła ponadpodstawowa, liceum ogólnokształcące, technikum, zakres rozszerzony

Podstawa programowa:

Cele kształcenia – wymagania ogólne
I. Rozumienie, analizowanie i rozwiązywanie problemów na bazie logicznego i abstrakcyjnego myślenia, myślenia algorytmicznego i sposobów reprezentowania informacji.
II. Programowanie i rozwiązywanie problemów z wykorzystaniem komputera oraz innych urządzeń cyfrowych: układanie i programowanie algorytmów, organizowanie, wyszukiwanie i udostępnianie informacji, posługiwanie się aplikacjami komputerowymi.
Treści nauczania – wymagania szczegółowe
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
3) objaśnia, a także porównuje podstawowe metody i techniki algorytmiczne oraz struktury danych, wykorzystując przy tym przykłady problemów i algorytmów, w szczególności:
b) rekurencję (do generowania ciągów liczb, potęgowania, sortowania liczb, generowania fraktali),

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 rekurencyjne podejście do algorytmu Euklidesa i poznasz zalety jego stosowania.

  • Zapoznasz się z różnymi implementacjami rekurencyjnego algorytmu Euklidesa.

  • Wyjaśnisz, czym rekurencja różni się od iteracji.

  • Rozwiążesz kilka zadań z wykorzystaniem rekurencji.

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ą:

  1. Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Rekurencja w języku Python”. Nauczyciel prosi uczniów o zapoznanie się z treściami w sekcji „Przeczytaj”.

Faza wstępna:

  1. Wyświetlenie przez nauczyciela tematu i celów lekcji. Określenie wiążących dla uczniów kryteriów sukcesu.

  2. Rozpoznanie wiedzy uczniów. Uczniowie tworzą pytania dotyczące tematu zajęć, na które odpowiedzą w trakcie lekcji.

Faza realizacyjna:

  1. Praca z tekstem. Uczniowie analizują przykład z sekcji „Przeczytaj” i testują zaprezentowane rozwiązania na swoim komputerze.

  2. Praca z multimedium. Uczniowie wspólnie zapoznają się z treścią i filmem umieszczonym w sekcji „Film samouczek”. Następnie indywidualnie przechodzą do wykonywania poleceń: 1, 3 i 5. W kolejnym kroku przedstawiają swoje rezultaty osobie z ławki. W przypadku wątpliwości i trudności przy rozwiązywaniu zadania nauczyciel omawia je na forum klasy.

  3. Ćwiczenie umiejętności. Uczniowie realizują indywidualnie ćwiczenia nr 1–3, po ich wykonaniu porównują otrzymane wyniki z inną osobą.

Faza podsumowująca:

  1. Wybrany uczeń podsumowuje zajęcia z programowania w Pythonie, zwracając uwagę na nabyte umiejętności.

Praca domowa:

  1. Uczniowie szukają problemów matematycznych i informatycznych, w których wykorzystanie rekurencji może być przydatne.

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:

  • Uczniowie mogą wykorzystać treści w sekcjach: „Przeczytaj”, „Film samouczek”, „Sprawdź się” jako materiał do lekcji powtórkowej.