Autor: Maurycy Gast

Przedmiot: Informatyka

Temat: Łańcuchy znaków – zadania maturalne

Grupa docelowa:

Szkoła ponadpodstawowa, liceum ogólnokształcące, technikum, zakres podstawowy i 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.
Treści nauczania – wymagania szczegółowe
I. Rozumienie, analizowanie i rozwiązywanie problemów.
Zakres podstawowy. Uczeń:
2) stosuje przy rozwiązywaniu problemów z różnych dziedzin algorytmy poznane w szkole podstawowej oraz algorytmy:
b) na tekstach: porównywania tekstów, wyszukiwania wzorca w tekście metodą naiwną, szyfrowania tekstu metodą Cezara i przestawieniową,
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
2) do realizacji rozwiązania problemu dobiera odpowiednią metodę lub technikę algorytmiczną i struktury danych;
5) przedstawia sposoby reprezentowania w komputerze znaków, liczb, wartości logicznych, obrazów, dźwięków, animacji;

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 rozwiązanie zadań maturalnych, w których sprawdzana jest umiejętność operowania na łańcuchach znaków.

  • Zapoznasz się z przykładowym zadaniem maturalnym.

  • Rozwiążesz przykładowe zadania maturalne wymagające znajomości operacji na łańcuchach znakó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 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ą:

  1. Przygotowanie do zajęć. Uczniowie powtarzają informacje dotyczące operacji na łańcuchach znaków w kontekście programowania.

Faza wstępna:

  1. Rozpoznanie wiedzy uczniów. Chętna lub wybrana osoba referuje najważniejsze informacje dotyczące łańcuchów znaków. W razie potrzeby nauczyciel uzupełnia jej wypowiedź.

  2. Nauczyciel prosi uczniów, by przygotowali przykładowe pytania dotyczące tematu.

  3. Nauczyciel wyświetla uczniom temat zajęć oraz cele. Prosi, by na ich podstawie uczniowie sformułowali kryteria sukcesu.

Faza realizacyjna:

  1. Praca z tekstem. Nauczyciel wyświetla zawartość sekcji „Przeczytaj”. Uczniowie zapoznają się z treścią Zadania 1, a następnie Zadania 1.1, analizują rozwiązanie. W kolejnym kroku implementują je w wybranym języku programowania. Porównują wyniki swojej pracy z kodem innej osoby programującej w tym samym języku. Chętne lub wybrane osoby prezentują swój kod, komentując go.

  2. Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Prezentacja multimedialna”. Uczniowie zapoznają się z Zadaniem 1.2 , a następnie na forum klasy analizują rozwiązanie przedstawione w prezentacji. Nauczyciel wyjaśnia niezrozumiałe kroki procedury. W kolejnym kroku uczniowie w parach implementują rozwiązanie w wybranym języku programowania. Nauczyciel sprawdza poprawność wykonania zadania.

  3. Ćwiczenie umiejętności. Nauczyciel przechodzi do sekcji „Sprawdź się”. Uczniowie indywidualnie rozwiązują Zadanie 2. Następnie omawiają swoje rozwiązania na forum klasy.

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. Nauczyciel prosi uczniów o podsumowanie zgromadzonej wiedzy.

Praca domowa:

  1. Uczniowie wykonują Zadanie 3 z sekcji „Sprawdź się”.

  2. Uczniowie wykonują polecenie 2 z sekcji „Prezentacja multimedialna”.

Materiały pomocnicze:

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

  • Oficjalna dokumentacja techniczna dla języka Java SE 8 (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 C++.

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

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