280 likes | 575 Views
Algorytmika (nie tylko) na maturze z informatyki. Prezentuje : Dorota Roman-Jurdzińska. Opis egzaminu z informatyki. Dwa poziomy: podstawowy i rozszerzony. Każdy poziom składa się z dwóch części : część pierwsza: rozwiązywanie zadań bez korzystania z komputera;
E N D
Algorytmika (nie tylko) na maturze z informatyki Prezentuje : Dorota Roman-Jurdzińska
Opis egzaminu z informatyki Dwa poziomy: podstawowy i rozszerzony. Każdy poziom składa się z dwóch części: część pierwsza: rozwiązywanie zadań bez korzystania z komputera; część druga: rozwiązywanie zadań przy użyciu komputera.
analiza algorytmów, konstruowanie algorytmów i dobór struktur danych, znajomość pojęć i metod związanych z algorytmiką. Arkusz I bez komputera Arkusz I – na kartce: Ponadto w każdym arkuszu występują zadania zamknięte lub krótkiej odpowiedzi - sprawdzające pierwszy standard wymagań egzaminacyjnych. Za pierwszy arkusz można uzyskać maksymalnie 20 punktów.
sprawdzanie w praktyce umiejętności programowania, rozwiązywanie problemów „z życia codziennego”, przetwarzanie danych (sortowanie, filtrowanie, łączenie, wyszukiwanie) w postaci kilku tabel. Arkusz II z komputerem Arkusz II – przy komputerze: Za drugi arkusz można uzyskać maksymalnie 30 punktów.
Zasady oceniania arkuszy egzaminacyjnych • Rozwiązania poszczególnych zadań oceniane są na podstawie szczegółowych kryteriów oceniania, jednolitych w całym kraju. • Egzaminatorzy, w szczególności, zwracają uwagę na: • poprawność merytoryczną rozwiązań, • kompletność i dokładność prezentacji rozwiązań zadań, np. wygląd, czytelność i przejrzystość tworzonych dokumentów, zachowanie odpowiednich zasad w zapisie programów i algorytmów. • Ocenianiu podlegają tylko te fragmenty pracy zdającego, które dotyczą polecenia. Komentarze, nawet poprawne, nie mające związku z poleceniem nie podlegają ocenianiu. • Gdy do jednego polecenia zdający podaje kilka rozwiązań (jedno prawidłowe, inne błędne), to egzaminator nie przyznaje punktów. • Całkowicie poprawne rozwiązania zadań, uwzględniające inny tok rozumowania niż podany w schemacie punktowania, są oceniane pełną liczbą punktów.
Arkusz I Algorytmy: • Analiza działania • Konstruowanie • Weryfikacja poprawności • Ocena efektywności (czas, pamięć) Wiedza z zakresu informatyki i technologii informacyjnej: • Budowa komputera, organizacja danych • Sieci komputerowe • Bezpieczeństwo, zagadnienia etyczne • Cyfrowy zapis danych
Arkusz I: algorytmika Zadanie 1 (poziom podstawowy) Na jednej z uczelni informatycznych nad wejściem do auli umieszczony został elektroniczny zegar odliczający sekundy od rozpoczęcia wykładu do jego zakończenia. Zegar jest nietypowy, ponieważ liczba sekund, która upływa od rozpoczęcia wykładu wyświetlana jest w systemie o podstawie 2. Przed rozpoczęciem odliczania zegar jest wyzerowany, tzn. na pierwszym polu od prawej strony jest wyświetlane zero i pozostałe pola są wygaszone. Przykład: Po upływie 10 sekund na zegarze wyświetlone są 4 pola z napisem: 1010. Po upływie 25 sekund – 5 pól z napisem: 11001. • Oblicz, na ilu polach tego zegara będzie wyświetlony czas najdłuższego wykładu, który może trwać 240 minut, czyli 14400 sekund. • …………….. • Odp.: Czas najdłuższego wykładu będzie wyświetlony na ………………. polach Łatwość: 0,72 • Typowe błędy: • przeliczanie minut zamiast sekund, • podawanie przeliczonej wartości zamiast liczby pól, • BRAK UMIEJĘTNOŚCI KONWERSJI POMIĘDZY SYSTEMAMI POZYCYJNYMI.
b) Oblicz, ile minut trwał ostatni wykład, jeżeli na zegarze, na koniec wykładu, wyświetlony został następujący napis: 1111110100100. Odpowiedź zapisz w układzie dziesiętnym. Pamiętaj o zamianie sekund na minuty. …………………………… Odp.: Ostatni wykład trwał ………………. minut. Łatwość: 0,59 • Typowe błędy: • brak przeliczanie sekund na minuty, błędne przeliczanie, • konwersja „od prawej do lewej” (najmniej znaczące bity tratkowane jako najbardziej znaczące), • BRAK UMIEJĘTNOŚCI KONWERSJI POMIĘDZY SYSTEMAMI POZYCYJNYMI..
c) Dla podanej poniżej specyfikacji zapisz algorytm (w postaci listy kroków, schematu blokowego lub w wybranym języku programowania, który wybrałeś/aś na egzamin), który dla czasu wykładu podanego w sekundach obliczy, ile jedynek zostanie wyświetlonych na zegarze w momencie zakończenia wykładu. Specyfikacja: Dane: s – liczba całkowita dodatnia określająca czas trwania wykładu w sekundach Wynik: l – liczba wyświetlonych jedynek Przykłady: Łatwość: 0,22
? ?
O rozwiązaniu: • Algorytm i stosowane w nim metody: • z lekcji matematyki (zamiana systemów pozycyjnych) • z lekcji informatyki (licznik, pętla). • Wyzwania: • Zapisz algorytm w postaci listy kroków • Uwzględnij sytuacje brzegowe • Użyj formalnych konstrukcji programistycznych • Sprawdź/popraw swoje rozwiązanie
Problemy i ich przyczyny: • Zliczanie zer a nie jedynek (sprawdź rozwiązanie na przykładowych danych) • Niepoprawne użycie licznika (sprawdź na przykładach; trenuj podstawowe konstrukcje, z nich zbudujesz każdy algorytm) • Jaki warunek zakończenia pętli? (klucz do poprawnych algorytmów)
Arkusz I: algorytmika Od algorytmu na lekcji matematyki do algorytmu na lekcji informatyki: Matematyka Dopóki liczba większa od zera, dziel ją przez dwa, podaj ilokrotnie reszta wynosiła jeden. Informatyka Specyfikacja Dane: n – liczba naturalna Wynik: liczba jedynek w binarnej reprezentacji n Algorytm • licznik 0 • Dopóki ( n > 0 ) • Jeśli (n mod 2 = 1): licznik licznik + 1 • n n / 2 • Zwróć licznik jako wynik
Arkusz I: algorytmika Problemy ze zliczaniem jedynek raz jeszcze: • działanie licznika: • Warunek zakończenia pętli • Warunek zliczania Algorytm • licznik 0 • Dopóki ( n > 0 ) • Jeśli (n mod 2 = 1): licznik licznik + 1 • n n / 2 • Zwróć licznik jako wynik
Arkusz I: algorytmika Zadanie (poziom rozszerzony) Ustal liczbę mnożeń wykonywaną przez podany algorytm jako funkcję argumentu n: Algorytm (szybkie potęgowanie): • p 1; b a • Dopóki ( n > 0 ) wykonuj: • Jeśli (n mod 2 ≠ 0): p p b • b b b; n n div 2 Problemy: • stosowanie pojęcia funkcji • funkcja logarytmiczna
Arkusz I – typowe problemy • Zapis algorytmu w postaci listy kroków • Koszt czasowy jako funkcja! • Przypadki brzegowe w algorytmach • Zgodność rozwiązań z poleceniem! • Zrozumienie i formalny zapis pojęć i metod (algorytmów) z zakresu matematyki
Arkusz II Typowe zadanie: • Dane – w plikach tekstowych. • Rozwiązanie: • Import danych do aplikacji; • Obliczenia, grupowanie, sortowanie, filtrowanie; • Łączenie danych rozproszonych w różnych plikach. Metody rozwiązywania zadań: • programowanie; • arkusz kalkulacyjny; • baza danych.
Arkusz II: algorytmika (również) bez programowania Zadanie (poziom rozszerzony) Wyznacz najdłuższy podciąg rosnący w ciągu liczb zapisanych w pliku. Rozwiązania • Program komputerowy: • zaleta: naturalne i proste rozwiązanie • problem: powyżej część większego zadania, którego pozostałe elementy najłatwiej rozwiązać w arkuszu kalkulacyjnym • Arkusz kalkulacyjny • problem: jak rozwiązać?
Arkusz II: algorytmika (również) bez programowania Zadanie (poziom rozszerzony) Wyznacz najdłuższy podciąg rosnący w ciągu liczb zapisanych w pliku. Arkusz kalkulacyjny – podział na podproblemy: Dane: komórki A[1], A[2], A[3], … Krok 1: B[i] = 1 gdy A[i] może kontynuować ciąg rosnący =JEŻELI(A7>A6;1;0) Krok 2: C[i] to długość ciągu rosnącego kończącego się na A[i] =JEŻELI(B7=1;C6+1;1) Krok 3: rozwiązaniem maksimum z kolumny C
Algorytmika: rady dla ucznia i nauczyciela • Ćwicz stosowanie konstrukcji algorytmicznych (instrukcja warunkowa, pętla, podstawienie, zmienna, rekurencja…). • Zapisuj znane algorytmy (z lekcji matematyki bądź z życia codziennego). • Symuluj działania algorytmu „na papierze”. • Stosuj systematyczne podejście do problemu: specyfikacja, rozwiązanie, weryfikacja poprawności, ocena efektywności • Stosuj zstępującą metodę rozwiązywania problemów
Wniosek: algorytmika w kanonie ścisłego wykształcenia • Systematyzacja wiedzy, język opisu metod rozwiązywania problemów/zadań • Zstępująca metoda rozwiązywania problemów • Konieczność (i możliwość) weryfikacji projektowanych rozwiązań • Matematyczne kryteria jakości rozwiązań (czas, pamięć jako funkcja)
Po co matura z informatyki? • Punkty rekrutacyjne na studia wyższe. • Programowanie– obowiązkowe zajęcia na studiach ścisłych i technicznych. • Algorytmy – algorytmizacja nauk przyrodniczych (genetyka, funkcjonowanie układów biologicznych). • Analiza danych pomiarowych, eksperymentalnych – kierunki ścisłe, techniczne, przyrodnicze, ekonomiczne. • Wiedza z zakresu funkcjonowania sieci komputerowych, składowania danych, funkcjonowania systemu komputerowego. • Bazy danych (zapytania, tworzenie baz, zestawień) – życie codzienne.