Joanna Osio [email protected] Nauczycielka matematyki w Gimnazjum im. Macieja Rataja w Żmigrodzie KONSPEKT ZAJĘĆ KOŁA INFORMATYCZNEGO LUB MATEMATYCZNEGO W KLASIE III GIMNAZJUM LUB I LICEUM ( 2 GODZ.) Temat: Sortowanie zbioru Przygotowanie uczniów: • podstawy obsługi komputera • znajomość programu ELI 2.0 MULTI PLUS Uczniowie znają pojęcia: • algorytm; • problem, dane, wynik, specyfikacja; • dobra określoność, uniwersalność algorytmu; • lista kroków; • schemat blokowy; • złożoność algorytmu. Zagadnienie: Algorytmika i rozwiązywanie problemów Narzędzia TI: Program ELI 2.0 MULTI PLUS Miejsce: Pracownia komputerowa Odniesienie do podstawy programowej: ZADANIA OGÓLNE SZKOŁY • efektywne współdziałanie w zespole i praca w grupie, • rozwiązywanie problemów w twórczy sposób • skuteczne porozumiewanie się w różnych sytuacjach, prezentacja własnego punktu widzenia i branie pod uwagę poglądów innych ludzi • rozwijanie sprawności umysłowych oraz osobistych zainteresowań MATEMATYKA • zbieranie, porządkowanie i przedstawianie danych (tam gdzie to możliwe z użyciem technologii informacji) INFORMATYKA • posługiwanie się sprzętem i korzystanie z usług systemu operacyjnego • rozwiązywanie problemów w postaci algorytmicznej; algorytmy wokół nas, przykłady algorytmów rozwiązywania problemów szkolnych; zapisywanie algorytmów w postaci procedur, które może wykonać komputer CELE ZAJĘĆ: WIADOMOŚCI – uczeń zna pojęcia: • algorytmu bąbelkowego • porządkowania przez wybór UMIEJĘTNOŚCI – uczeń potrafi: • posortować zbiór • zapisać algorytm bąbelkowy oraz algorytm porządkowania przez wybór w postaci listy kroków • zapisać oba algorytmy w postaci schematu blokowego w programie ELI WSTĘP: Sortowanie (porządkowanie) ma ogromne znaczenie w wielu sferach działalności człowieka, ponieważ wykonywanie wielu operacji na zbiorze staje się łatwiejsze, gdy jest on uporządkowany. Również komputery zawdzięczają swoją szybkość temu, że działają na uporządkowanych danych. Chodzi tu o operacje: sprawdzenia, czy element spełniający dane warunki jest w zbiorze; znalezienia elementu w zbiorze; wstawienia nowego elementu w odpowiednie miejsce, aby zbiór pozostał uporządkowany. Dlatego wybrałam problem sortowania jako temat konspektu zajęć na koło informatyczne. OPIS I SPECYFIKACJA ZADANIA: Dane: Liczba naturalna n i zbiór liczb rzeczywistych { x1,x2,...,xn } takich, że xk ≤ xm dla 1≤ k ≤ n , 1≤ m ≤ n. Wynik: Uporządkowanie tego zbioru rosnąco. PRZEBIEG ZAJĘĆ: Lekcja 1: Czynności nauczyciela Czynności uczniów 1. Czynności wstępne – powitanie, 1. Zajmują miejsca i sprawdzenie obecności, określenie zapisują temat zajęć. celu zajęć i podanie tematu. [3min] Uwagi 2.Sformułowanie zadania: Dany jest zbiór A={-16, 0, 8, 17,4}.Uporządkuj ten zbiór rosnąco. [2min] 2. Wykonują zadanie. 3.Nauczyciel zadaje pytanie o 3.Opisują sposób sposób postępowania prowadzący rozwiązania zadania. do rozwiązania zadania. [3min] Przypuszczalnie będzie to słowny opis porządkowania przez wybór. 4.Podział uczniów na grupy i 4.Pracują w grupach. polecenie zapisania podanego algorytmu w postaci listy kroków. [5min] 5.Nauczyciel prosi jedną z grup o przedstawienie rozwiązania (po uprzednim sprawdzeniu jego poprawności). [8min] Rozwiązanie w 5.Przedstawiciel grupy prezentuje rozwiązanie na załączniku A tablicy. Dyskusja nad poprawnością i uniwersalnością algorytmu. 6.Nauczyciel zadaje pytanie o liczbę operacji jaką należy wykonać przy realizacji algorytmu. 6.Wspólna dyskusja prowadząca do ustalenia liczby iteracji n-1 oraz liczby porównań (n-1)+(n – 2)+...+2+1 [ 4min] 7.Polecenie zapisania algorytmu w postaci schematu blokowego w programie ELI (praca w grupach). Nauczyciel nadzoruje pracę. [15min] 7.Włączają komputery, uruchamiają program ELI. Tworzą schemat blokowy. Testują program na typowych i specyficznych danych. 8. Podsumowuje zajęcia. [5min] 8. Wspólnie z nauczycielem omawiają algorytm porządkowania przez wybór. Lekcja 2: Czynności nauczyciela 1. Czynności wstępne – powitanie, sprawdzenie obecności, określenie celu zajęć i podanie tematu. [3min] 2.Przypomnienie problemu z poprzedniej lekcji. Pytanie o sposób rozwiązania. [2min] Czynności uczniów 1. Zajmują miejsca, zapisują temat lekcji i włączają komputery. Uwagi 2.Opisują w skrócie sposób rozwiązania problemu porządkowania zbioru. 3.Nauczyciel zadaje pytanie czy 3.Uczniowie mają czas na jest to jedyna metoda rozwiązania zastanowienie się i wspólną tego problemu. dyskusję. [5min] 4.Nauczyciel prosi o 4.Wspólna dyskusja. przedstawienie rozwiązań te osoby, które znalazły inne metody niż ta z poprzedniej lekcji. [5min] 5.Praca w grupach pod 5.Nauczyciel dzieli uczniów na nadzorem nauczyciela. grupy i przedstawia zadanie do wykonania: Zapisz w postaci listy kroków algorytm bąbelkowy porządkowania zbioru. [5min] 6.Nauczyciel prosi jednego z uczniów o prezentację algorytmu na tablicy. [5min] 6.Wspólna dyskusja na temat przedstawionego rozwiązania oraz jego poprawności i uniwersalności. 7. Wywołanie dyskusji na temat złożoności algorytmu. [3min] 7.Wspólna dyskusja prowadząca do ustalenia maksymalnej liczby porównań równej (n-1)+ (n-2)+...+2+1 Oczekuję, że uczniowie podadzą metodę prowadzącą do algorytmu bąbelkowego. Jeżeli nie nauczyciel przedstawi tę metodę uczniom. Przed przystąpieniem uczniów do pracy nauczyciel wyjaśnia nazwę „algorytm bąbelkowy”. Rozwiązanie w załączniku B. 8.Polecenie uruchomienia programu ELI i zapisania algorytmu w postaci schematu blokowego (praca w grupach). Nauczyciel nadzoruje pracę. [15min] 9. Podsumowanie zajęć. [2min] 8.Włączają komputery, uruchamiają program ELI. Tworzą schemat blokowy. Testują program na typowych i specyficznych danych. 9. Wspólnie z nauczycielem omawiają algorytm bąbelkowy oraz porównują złożoność tego algorytmu i algorytmu porządkowania przez wybór. Dyskusja prowadzi do wniosku ,że mimo iż oba algorytmy mogą być jednakowo złożone, jednak w przypadku algorytmu bąbelkowego liczba operacji może być mniejsza od maksymalnej. Zależy to od początkowego ustawienia liczb. Zadanie domowe: Przygotuj informacje na temat porządkowania kubełkowego. ZAŁĄCZNIK A Algorytm porządkowania przez wybór Dane: Liczba naturalna n i zbiór liczb {x1, x2, ..., xn}. Wynik: Uporządkowanie elementów tego zbioru rosnąco. Krok 1. Dla i = 1, 2, ..., n – 1 wykonaj kroki 2 i 3. Krok 2. Znajdź k takie, że xk jest najmniejszym elementem w podzbiorze {xi, ..., xn}. Krok 3. Zamień miejscami elementy xi oraz xk. ZAŁĄCZNIK B Algorytm bąbelkowy porządkowania zbioru liczb Dane: Liczba naturalna n i zbiór liczb {x1, x2, ..., xn}. Wynik: Uporządkowanie elementów tego zbioru rosnąco. Krok 1. Kres:=n.{Kres określa miejsce w zbiorze stanowiące granicę poszukiwania pary elementów do przestawienia.} Krok 2. Przyjmij i:=1 oraz k:=0 {k jest wskaźnikiem przestawianej pary} Krok 3. Dopóki i < Kres, wykonuj: Jeśli xi>xi+1, to przestaw te liczby i przyjmij k:=i; zwiększ i: i:=i+1 Krok 4. Jeśli k > 1, to przyjmij Kres:=k i wróć do kroku 2, a w przeciwnym razie zakończ algorytm. Schemat blokowy porządkowania algorytmem bąbelkowym Schemat blokowy porządkowania przez wybór Literatura: Maciej M. Sysło , Algorytmy, WSiP S.A., Warszawa 1997.