Autor: Zespół autorski Contentplus.pl

Przedmiot: Informatyka

Temat: Wstęp do algorytmów sortowania

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.
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 podstawowy. Uczeń:
2) stosuje przy rozwiązywaniu problemów z różnych dziedzin algorytmy poznane w szkole podstawowej oraz algorytmy:
c) porządkowania ciągu liczb: przez wstawianie i metodą bąbelkową,
4) porównuje działanie różnych algorytmów dla wybranego problemu, analizuje algorytmy na podstawie ich gotowych implementacji;
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;
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 podstawowy. Uczeń:
1) projektuje i programuje rozwiązania problemów z różnych dziedzin, stosuje przy tym: instrukcje wejścia/wyjścia, wyrażenia arytmetyczne i logiczne, instrukcje warunkowe, instrukcje iteracyjne, funkcje z parametrami i bez parametrów, testuje poprawność programów dla różnych danych; w szczególności programuje algorytmy z punktu I.2);
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
1) zapisuje za pomocą listy kroków, schematu blokowego lub pseudokodu, i implementuje w wybranym języku programowania, algorytmy poznane na wcześniejszych etapach oraz algorytmy:
e) sortowania ciągu liczb przez scalanie,
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:
a) wyszukiwanie elementów liniowe i przez połowienie (do znajdowania elementów w zbiorze, sortowania przez wstawianie, przybliżonego rozwiązywania równań, sprawdzania przynależności punktu do wielokąta wypukłego),
c) metodę dziel i zwyciężaj (jednoczesne znajdowanie minimum i maksimum, sortowanie przez scalanie i szybkie),

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

  • Uzasadnisz, dlaczego algorytmy sortujące są tak często używane.

  • Zapoznasz się z podstawowymi informacjami dotyczącymi wybranych algorytmów sortowania.

  • Poznasz złożoność czasową wybranych algorytmów.

  • Wymienisz różnice między algorytmami sortowania.

  • Zapoznasz się z wizualizacją działania wybranych algorytmów sortowania.

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.

Przebieg lekcji

Przed lekcją:

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

  2. Uczniowie w grupach przygotowują propozycję własnego algorytmu sortowania.

Faza wstępna:

  1. Wyświetlenie przez nauczyciela tematu i celów zajęć, przejście do wspólnego ustalenia kryteriów sukcesu.

  2. Rozpoznanie wiedzy uczniów. Nauczyciel prosi wybranego ucznia lub uczniów o przedstawienie sytuacji problemowej związanej z tematem lekcji.

Faza realizacyjna:

  1. Grupy prezentują swoje pomysły na własne algorytmy sortowania. Uczniowie na forum klasy starają się określić ich złożoność czasową oraz pamięciową.

  2. Praca z tekstem. Wskazane przez nauczyciela osoby referują najważniejsze informacje zaprezentowane w sekcji „Przeczytaj”. W razie potrzeby nauczyciel wyjaśnia niezrozumiałe treści.

  3. Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Animacja”. Uczniowie wspólnie zapoznają się z jego treścią, następnie wykonują polecenia nr 2 oraz 3.

  4. Ćwiczenia interaktywne. Uczniowie dobierają się w pary i wykonują ćwiczenia nr 1‑7 z sekcji „Sprawdź się”. Następnie konsultują swoje rozwiązania z inną parą uczniów.

Faza podsumowująca:

  1. Na koniec zajęć nauczyciel jeszcze raz wyświetla temat lekcji i cele zawarte w sekcji „Wprowadzenie”. W odniesieniu do ich realizacji podsumowuje przebieg zajęć, a także wskazuje mocne i słabe strony pracy uczniów.

  2. Nauczyciel zadaje pytania podsumowujące, np.
    – jakie są główne zadania algorytmów sortujących?
    – co to jest złożoność pamięciowa?
    – co to jest złożoność obliczeniowa?
    – wymień kilka znanych ci metod sortowania.

Praca domowa:

  1. Uczniowie wykonują ćwiczenie nr 8 z sekcji „Sprawdź się”.

Wskazówki metodyczne:

  • Uczniowie mogą spróbować przygotować implementacje przedstawionych przez siebie algorytmów sortowania.