Scenariusz lekcji informatyki
Temat: Sortowanie danych metodą bąbelkową w języku Python
Podstawa programowa: zakres podstawowy dla technikum
Cel ogólny
Rozumienie, analizowanie i rozwiązywanie problemów z wykorzystaniem algorytmu metodą sortowania bąbelkowego
Cele szczegółowe, uczeń:
• omawia działanie metody sortowania bąbelkowego rozpisując przykładowy ciąg liczbowy na tablicy/kartce
• rozumie algorytm realizujący porządkowanie danych metodą sortowania bąbelkowego
• pisze w języku Python program realizujący algorytm metodą sortowania bąbelkowego
• przeprowadza weryfikację poprawności działania algorytmu.
Metody i techniki nauczania:
• rozmowa nauczająca z wykorzystaniem tablicy
• dyskusja
Formy pracy:
• praca indywidualna;
• praca w parach;
Środki dydaktyczne:
• komputery z dostępem do internetu;
• oprogramowanie dla języka Python 3
Przebieg lekcji
Faza wstępna:
1. Przedstawienie celów zajęć, tematu lekcji, wyjaśnienie zagadnienia.
Nauczyciel wprowadza w tematykę zagadnienia, podaje uczniom iż mamy dwie podstawowe metody porządkowania danych: algorytm sortowania metodą bąbelkową i algorytm sortowania metodą przez wstawianie. Sortowanie bąbelkowe związane z tematem lekcji to inaczej sortowanie przez prostą zamianę. Sortowanie to przechodzi przez zbiór elementów i porównuje wszystkie kolejne pary wyrazów ciągu. Operacją dominującą będzie tu porównywanie.
Faza realizacyjna:
1. Uczniowie analizują i rozpisują razem z nauczycielem przykładowy, nieuporządkowany ciąg liczbowy na tablicy metodą bąbelkową aby uporządkować liczby tworzące ten ciąg w celu zrozumienia mechanizmu działania tego algorytmu.
[3,6,7,0,4,1,5,2,8].
2. W kolejnym etapie będzie wykonana implementacja algorytmu w języku Python
Nauczyciel wyjaśniając działanie algorytmu, odnosi strategie porządkowania danych metodą bąbelkową bezpośrednio do przykładu linijek kodu w języku Python (wykorzystuje funkcję def sortuj (T)), zwraca uwagę że mamy w kodzie dwie zagnieżdżone pętle:
for j in range(n-1,0,-1):
for i in range (j):
3. Ćwiczenie umiejętności. Uczniowie wykonują algorytm sortowania metodą bąbelkową na swoich stanowiskach w środowisku Python. Testują działanie kodu wykorzystując do tego wcześniej podane przykłady. Wykonują zadanie
Zadanie. Napisz program w języku Python, który będzie porządkował podany ciąg liczbowy [3,6,7,0,4,1,5,2,8] wykorzystując sortowanie danych metodą bąbelkową.
Nauczyciel sprawdza poprawność napisanych programów, analizuje z uczniami kod programu.
Faza podsumowująca:
Nauczyciel inicjuje krótką rozmowę na temat zrealizowanych celów (czego uczniowie się nauczyli), omawia ewentualne problemy podczas rozwiązania ćwiczeń z programowania w języku Python.