Autor: zespół autorski Contentplus.pl sp. z o.o.

Przedmiot: Informatyka

Temat: Wskaźniki, tablice dynamiczne i dynamiczna alokacja pamięci w języku C++

Grupa docelowa:

Liceum ogólnokształcące i technikum, 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. Rozumienie, analizowanie i rozwiązywanie problemów.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
3) objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych i ocenia jego efektywność;
II. Programowanie i rozwiązywanie problemów z wykorzystaniem komputera i innych urządzeń cyfrowych.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
3) sprawnie posługuje się zintegrowanym środowiskiem programistycznym przy pisaniu, uruchamianiu i testowaniu programów;
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:
i) struktury dynamiczne: stos, kolejka, lista (do realizacji algorytmu: ONP, symulacji problemu Flawiusza, sortowania leksykograficznego),

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

  • Wyjaśnisz działanie zarządzania pamięcią w języku C++.

  • Zapiszesz przykład tablicy dynamicznej w języku C++.

  • Rozwiążesz ćwiczenia wymagające od ciebie wykorzystania tablic dynamicznych.

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;

  • telefony z dostępem do internetu;

  • 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.

Przebieg lekcji

Przed lekcją:

  1. Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Wskaźniki, tablice dynamiczne i dynamiczna alokacja pamięci w języku C++”. Uczniowie zapoznają się z treściami w sekcji „Przeczytaj”.

Faza wstępna:

  1. Nauczyciel wprowadza uczniów szczegółowo w temat lekcji i jej cele. Może posłużyć się wyświetloną na tablicy zawartością sekcji „Wprowadzenie”.

  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. Nauczyciel wyświetla na tablicy zawartość sekcji „Przeczytaj”. Chętna lub wybrana osoba na forum klasy referuje najważniejsze informacje na podstawie lektury w domu. W razie potrzeby nauczyciel uzupełnia wypowiedź.

  2. Praca z multimedium. Uczniowie analizują prezentację z sekcji „Prezentacja multimedialna”.

  3. Uczniowie w czwórkach wykonują polecenia nr 2–3 z sekcji „Prezentacja multimedialna”.

  4. Ćwiczenie umiejętności. Uczniowie wykonują indywidualnie ćwiczenie nr 1 z sekcji „Sprawdź się”. Chętne lub wybrane osoby przedstawiają swoje rozwiązania. Nauczyciel omawia je i odpowiada na ewentualne pytania.

  5. Uczniowie wykonują w parach ćwiczenie nr 2 z sekcji „Sprawdź się”. Po wykonaniu ćwiczenia następuje omówienie rozwiązania przez nauczyciela.

Faza podsumowująca:

  1. Nauczyciel ponownie wyświetla na tablicy temat i cele lekcji zawarte w sekcji „Wprowadzenie”. W kontekście ich realizacji następuje omówienie ewentualnych problemów z rozwiązaniem ćwiczeń z sekcji „Sprawdź się”.

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

Praca domowa:

Uczniowie wykonują ćwiczenie nr 3 z sekcji „Sprawdź się”. Uczniowie wykonują polecenie nr 4 z sekcji „Prezentacja multimedialna”.

Materiały pomocnicze:

  • Oficjalna dokumentacja techniczna dla języka C++.

  • Oficjalna dokumentacja techniczna dla języka C++.

  • Oficjalna dokumentacja techniczna dla kompilatora GCC/G++ 4.5 (lub nowszej wersji).

  • 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.

Wskazówki metodyczne:

  • Treści w sekcji „Prezentacja multimedialna” można wykorzystać na lekcji jako podsumowanie i utrwalenie wiedzy uczniów.