Treść nowej podstawy programowej

4 ZAKRES ROZSZERZONY

I. Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:

  1. w zależności od problemu rozwiązuje go, stosując metodę wstępującą lub zstępującą;
  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ść;
  4. ilustruje i wyjaśnia rolę pojęć, obiektów i operacji matematycznych w projektowaniu rozwiązań problemów informatycznych i z innych dziedzin, posługuje się pojęciem logarytmu;
  5. przedstawia sposoby reprezentowania w komputerze znaków, liczb, wartości logicznych, obrazów, dźwięków, animacji;
  6. objaśnia sposoby wykonywania przez komputer działań arytmetycznych i operacji logicznych;
  7. wyjaśnia, jakie może być źródło błędów pojawiających się w obliczeniach komputerowych: błąd zaokrąglenia, błąd przybliżenia;
  8. dyskutuje na temat roli myślenia komputacyjnego i jego metod, takich jak: abstrakcja, reprezentacja danych, dekompozycja problemu, redukcja, myślenie rekurencyjne, podejście heurystyczne w rozwiązywaniu problemów z różnych dziedzin.
II. Programowanie i rozwiązywanie problemów z wykorzystaniem komputera i innych urządzeń cyfrowych.

Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:

  1. projektuje i tworzy rozbudowane programy w procesie rozwiązywania problemów, wykorzystuje w programach dobrane do algorytmów struktury danych, w tym struktury dynamiczne i korzysta z dostępnych bibliotek dla tych struktur;
  2. stosuje zasady programowania strukturalnego i obiektowego w rozwiązywaniu problemów;
  3. sprawnie posługuje się zintegrowanym środowiskiem programistycznym przy pisaniu, uruchamianiu i testowaniu programów;
  4. przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym:
    1. tworzy i edytuje dwuwymiarowe oraz trójwymiarowe wizualizacje i animacje, stosuje właściwe formaty plików graficznych,
    2. uczestniczy w opracowaniu dokumentacji projektu zespołowego, pracując przy tym w odpowiednim środowisku,
    3. stosuje zaawansowane funkcje arkusza kalkulacyjnego w zależności od rodzaju danych, definiuje makropolecenia, zna możliwości wbudowanego języka programowania,
    4. projektuje i tworzy relacyjną bazę złożoną z wielu tabel oraz sieciową aplikację bazodanową dla danych związanych z rozwiązywanym problemem, formułuje kwerendy, tworzy i modyfikuje formularze oraz raporty, stosuje język SQL do wyszukiwania informacji w bazie i do jej modyfikacji, uwzględnia kwestie integralności danych, bezpieczeństwa i ochrony danych w bazie,
    5. programuje elementy strony internetowej współpracujące z sieciową bazą danych;
  5. współtworzy otwarte zasoby i aktywności oraz umieszcza je w sieci, m.in. na platformie do e-nauczania.
III. I + II. 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:
    1. algorytm Euklidesa w wersji iteracyjnej i rekurencyjnej wraz z zastosowaniami,
    2. znajdowania określonego elementu w zbiorze: lidera, idola, elementu w zbiorze uporządkowanym metodą binarnego wyszukiwania,
    3. generowania liczb pierwszych metodą sita Eratostenesa,
    4. jednoczesnego wyszukiwania elementu najmniejszego i największego,
    5. sortowania ciągu liczb przez scalanie,
    6. wyznaczania miejsc zerowych funkcji metodą połowienia,
    7. obliczania przybliżonej wartości pierwiastka kwadratowego,
    8. obliczania wartości wielomianu za pomocą schematu Hornera,
    9. szybkiego potęgowania liczb w wersji iteracyjnej i rekurencyjnej,
    10. badania położenia punktu względem prostej i przynależności punktu do odcinka,
    11. rekurencyjnego tworzenia fraktali: zbiór Cantora, drzewo binarne, dywan Sierpińskiego, płatek Kocha;
  2. wykorzystuje znane sobie algorytmy przy rozwiązywaniu i programowaniu rozwiązań następujących problemów:
    1. rozkładania liczby na czynniki pierwsze,
    2. wykonywania działań na liczbach w systemach innych niż dziesiętny,
    3. znajdowania w ciągu podciągów o różnorodnych własnościach, np. najdłuższego spójnego podciągu niemalejącego, spójnego podciągu o największej sumie,
    4. zamiany wyrażenia na postać w odwrotnej notacji polskiej i obliczanie jego wartości na podstawie tej postaci,
    5. badania przecinania się odcinków, przynależności punktu do trójkąta,
    6. obliczanie przybliżonej wielkości pola obszarów zamkniętych;
  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:
    1. 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),
    2. rekurencję (do generowania ciągów liczb, potęgowania, sortowania liczb, generowania fraktali),
    3. metodę dziel i zwyciężaj (jednoczesne znajdowanie minimum i maksimum, sortowanie przez scalanie i szybkie),
    4. podejście zachłanne (do wydawania reszty, pakowania plecaka, szukania najkrótszej drogi),
    5. programowanie dynamiczne (do pakowania plecaka, szukania najdłuższego wspólnego podciągu),
    6. metodę szyfrowania z kluczem publicznym i jej zastosowanie w podpisie elektronicznym,
    7. metodę haszowania (wyszukiwanie wzorca w tekście),
    8. metodę Monte Carlo (obliczanie przybliżonej wartości liczby π, symulacja ruchów Browna),
    9. struktury dynamiczne: stos, kolejka, lista (do realizacji algorytmu: ONP, symulacji problemu Flawiusza, sortowania leksykograficznego),
    10. grafy (do przedstawiania abstrakcyjnego modelu sytuacji problemowych).
IV. Posługiwanie się komputerem, urządzeniami cyfrowymi i sieciami komputerowymi. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:

  1. projektuje rozbudowę i zakup nowego zestawu komputerowego oraz oprogramowania;
  2. dokonuje kompresji informacji, objaśnia różnice między kompresją stratną i bezstratną tekstów, obrazów, dźwięków, filmów;
  3. opisuje warstwowy model sieci komputerowej oraz model sieci internet, opisuje podstawowe funkcje urządzeń i protokoły stosowane w przepływie informacji i w zarządzaniu siecią;
  4. konfiguruje przykładową lokalną sieć komputerową oraz bezprzewodowy dostęp do sieci internet;
  5. wyjaśnia, od czego zależy sprawne funkcjonowanie sieci komputerowej oraz szybki dostęp do jej usług i zasobów (parametry osprzętu sieciowego, szerokość pasma, zabezpieczenia typu ściana ogniowa i programy antywirusowe, możliwości serwera).
V. Rozwijanie kompetencji społecznych.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:

  1. przy realizacji zespołowego projektu programistycznego posługuje się środowiskiem przeznaczonym do współpracy i realizacji projektów zespołowych, w tym środowiskiem w chmurze; współtworzy zasoby udostępniane na platformach do e-nauczania;
  2. analizuje i charakteryzuje wpływ trendów w historycznym rozwoju pojęć, metod informatyki oraz technologii na możliwości rozwiązywania problemów teoretycznych i praktycznych;
  3. przygotowuje się do świadomego wyboru kierunku i zakresu dalszego kształcenia, głównie informatycznego, z myślą o przyszłej karierze zawodowej.
VI. Przestrzeganie prawa i zasad bezpieczeństwa.
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:

  1. objaśnia rolę technik uwierzytelniania, kryptografii i podpisu elektronicznego w ochronie i dostępie do informacji;
  2. omawia znaczenie algorytmów szyfrowania i składania podpisu elektronicznego.