Dla nauczyciela
Autor: Maurycy Gast
Przedmiot: Informatyka
Temat: Algorytm Euklidesa w języku C++
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):
Przeanalizujesz dwie wersje algorytmu Euklidesa.
Wskażesz, jakie są różnice między zoptymalizowanym i niezoptymalizowanym algorytmem Euklidesa.
Wykorzystasz algorytm Euklidesa do rozwiązywania problemów życia codziennego.
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.
Przebieg lekcji
Przed lekcją:
Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Algorytm Euklidesa w języku C++”. Uczniowie zapoznają się z treściami w sekcji „Przeczytaj”.
Faza wstępna:
Nauczyciel wyświetla i odczytuje temat lekcji oraz cele zajęć. Prosi uczniów o sformułowanie kryteriów sukcesu.
Rozpoznawanie wiedzy uczniów.
Faza realizacyjna:
Nauczyciel wyświetla zawartość sekcji „Przeczytaj”. Uczniowie zapoznają się z treścią problemu 1. W parach wypracowują rozwiązanie. Następnie porównują je z przedstawionym na filmie. W kolejnym kroku uczniowie wspólnie analizują prezentację, a następnie sprawdzają, o ile szybciej wykona się algorytm zoptymalizowany w porównaniu do niezoptymalizowanego dla różnych par liczb.
Ćwiczenie umiejętności. Poszukiwanie najefektywniejszego rozwiązania problemu. Uczniowie wykonują w parach ćwiczenie nr 1 z sekcji „Sprawdź się”, a następnie porównują swój kod omawiając go wspólnie na forum. Nauczyciel ocenia efektywność zastosowanego rozwiązania.
Liga zadaniowa – uczniowie pracując w parach, wykonują ćwiczenie nr 2: z sekcji „Sprawdź się”, a następnie dzielą się swoimi wynikami przez porównywanie napisanego kodu z inną grupą, która również zakończyła zadanie.
Faza podsumowująca:
Nauczyciel zadaje pytania podsumowujące, np.
w jakich przypadkach możemy użyć algorytm Euklidesa?
jakie są różnice między zoptymalizowanym i niezoptymalizowanym algorytmem Euklidesa?
Nauczyciel prosi uczniów o podsumowanie zgromadzonej wiedzy w zakresie programowania w języku C++.
Praca domowa:
Uczniowie wykonują ćwiczenie 3 z sekcji „Sprawdź się”.
Uczniowie zapoznają się z audiobookiem i wykonują polecenie 2 z sekcji „Audiobook”.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka C++.
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:
Uczniowie mogą wykorzystać multimedia z sekcji: „Przeczytaj”, „Audiobook”, „Sprawdź się” do przygotowania się do lekcji powtórkowej.