Teraz bajty. Program nauczania informatyki dla szkoły ponadpodstawowej. Zakres rozszerzony. Zawężona podstawa programowa 2024

Grażyna Koba

Migra Sp. z o.o.
2024

Przedstawiony program umożliwia realizację podstawy programowej z wykorzystaniem materiału edukacyjnego dostępnego na stronie ir.migra.pl pt. Teraz bajty. Informatyka dla szkoły ponadpodstawowej. Zakres rozszerzony. Materiał edukacyjny autorstwa Grażyny Koby.

Spis treści 
Zmiany wynikające z zawężenia podstawy programowej
Założenia programu
Podstawa programowa do informatyki dla szkoły ponadpodstawowej – zakres podstawowy i rozszerzony
Szczegółowe cele kształcenia i wychowania oraz treści nauczania w korelacji z treściami podstawy programowej
Moduł A. Wokół komputera i sieci komputerowych
Reprezentowanie znaków, danych liczbowych i wartości logicznych w komputerze
Kompresja informacji
Działania arytmetyczne i logiczne wykonywane przez komputer
Sieci komputerowe – funkcje urządzeń i protokoły
Zasady bezpieczeństwa
Moduł B. Wokół dokumentów komputerowych
Więcej o tworzeniu i edytowaniu grafiki rastrowej
Więcej o tworzeniu i edytowaniu grafiki wektorowej
Trójwymiarowe wizualizacje
Zaawansowane funkcje arkusza kalkulacyjnego
Tworzenie relacyjnej bazy danych
Tworzenie kwerend z wykorzystaniem języka SQL
Moduł C. Wokół algorytmiki i programowania
Więcej na temat programowania, w tym stosowania funkcji i tablic (list)
Programowanie algorytmów iteracyjnych i rekurencyjnych
Stosowanie wybranych algorytmów do rozwiązywania problemów
Objaśnianie algorytmów i porównywanie technik algorytmicznych
Moduł D. Wokół Internetu i projektów
Kompetencje społeczne – zespołowy projekt programistyczny
Sztuczna inteligencja – projekt
Propozycje metod sprawdzania osiągnięć ucznia
Uwagi o realizacji programu
 Zmiany wynikające z zawężenia podstawy programowej
Przedstawiamy program nauczania do realizacji informatyki w zakresie rozszerzonym w szkołach ponadpodstawowych uwzględniający zmiany wynikające z zawężenia podstawy programowej dla szkoły ponadpodstawowej na podstawie projektu rozporządzenia MEN z 2024 roku: Rozporządzenie Ministra Edukacji zmieniającego rozporządzenie w sprawie podstawy programowej kształcenia ogólnego dla liceum ogólnokształcącego, technikum oraz branżowej szkoły II stopnia.
W związku z usunięciem wybranych treści z podstaw programowych wprowadzono odpowiednie zmiany w programie nauczania.
Rozporządzenie usuwa z treści nauczania:
•	przedstawianie algorytmów za pomocą schematów blokowych;
•	algorytmy (i ich programowanie): znajdowania lidera, idola w zbiorze, badania położenia punktu względem prostej i przynależności punktu do odcinka, badania przecinania się odcinków, przynależności punktu do trójkąta, sprawdzania przynależności punktu do wielokąta wypukłego, obliczanie przybliżonej wielkości pola obszarów zamkniętych, pakowania plecaka, metodę haszowania (wyszukiwanie wzorca w tekście), metodę Monte Carlo (obliczanie przybliżonej wartości liczby π, symulacja ruchów Browna), symulacji problemu Flawiusza, sortowania leksykograficznego);
•	stosowanie zasad programowania strukturalnego i obiektowego w rozwiązywaniu problemów;
•	w rekurencyjnym tworzeniu fraktali usunięto konkretne przykłady: zbiór Cantora, drzewo binarne, dywan Sierpińskiego, płatek Kocha;
•	reprezentowanie w komputerze obrazów, dźwięków, animacji;
•	definiowanie makropoleceń i możliwości wbudowanego języka programowania w arkuszu kalkulacyjnym,
•	tworzenie i modyfikowanie formularzy oraz raportów w bazie danych
•	projektowanie i tworzenie sieciowej aplikacji bazodanowej oraz programowanie elementów strony internetowej współpracującej z sieciową bazą danych;
•	charakteryzowanie wpływu trendów w historycznym rozwoju pojęć, metod informatyki;
•	projektowanie rozbudowy i zakupu nowego zestawu komputerowego oraz oprogramowania; 
•	opisywanie warstwowego modelu sieci komputerowej oraz modelu sieci Internet, konfigurowanie przykładowej lokalnej sieć komputerową oraz bezprzewodowego dostępu do sieci Internet; wyjaśnianie, 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).

Ponadto przesunięto z podstawy z zakresu podstawowego do rozszerzonego:
•	metodę połowienia, podejście zachłanne i rekurencję;
•	porównywanie działania różnych algorytmów dla wybranego problemu i analizowanie algorytmów na podstawie ich gotowych implementacji.

Wszystkie te zmiany zostały odpowiednio uwzględnione w prezentowanym programie nauczania.

Założenia programu
Treści podstawy programowej z informatyki mają charakter przyrostowy, sugerując w ten sposób spiralny rozwój wiedzy, umiejętności i kompetencji uczniów przez wszystkie lata nauki szkolnej. 
Zgodnie z podstawą programową uczeń realizujący informatykę w zakresie rozszerzonym powinien spełniać wymagania określone dla zakresu podstawowego. 
Prezentowany program nauczania do zakresu rozszerzonego jest rozszerzeniem programu do zakresu podstawowego dostępnego na stronie wydawnictwa. Natomiast realizację prezentowanego programu umożliwia materiał edukacyjny pt. Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony umieszczony na stronie ir.migra.pl, który stanowi rozszerzenie podręczników do zakresu podstawowego dla szkół ponadpodstawowych z serii „Teraz bajty”.
Programy do zakresu podstawowego i rozszerzonego, podobnie jak podręczniki i Materiał edukacyjny z serii „Teraz bajty” uwzględniają uszczuploną podstawę programową z 2024 roku.
Prezentowany program, podobnie jak podręczniki z serii „Teraz bajty”, ma budowę modułową. Pozwala to realizować materiał nauczania w podanym układzie lub dostosować kolejność realizacji modułów, a tym samym zawartych w nich treści, do specyfiki szkoły i grupy uczniów. 
Program podzielono na cztery moduły (A, B, C i D) odpowiadające odpowiednio modułom w podręcznikach z serii „Teraz bajty” do zakresu podstawowego. 
Moduł A. Wokół komputera i sieci komputerowych
Moduł B. Wokół dokumentów komputerowych
Moduł C. Wokół algorytmiki i programowania
Moduł D. Wokół Internetu i projektów

Podstawa programowa do informatyki dla szkoły ponadpodstawowej – zakres podstawowy i rozszerzony
Rozporządzenie Ministra Edukacji zmieniającego rozporządzenie w sprawie podstawy programowej kształcenia ogólnego dla liceum ogólnokształcącego, technikum oraz branżowej szkoły II stopnia z 2024 roku uwzględnia zmiany wynikające z zawężenia podstawy programowej. Rozporządzenie określa m.in. podstawę programową do informatyki dla szkół ponadpodstawowych (dla zakresu podstawowego łącznie z zakresem rozszerzonym), w tym dla liceum i technikum. 
Przedstawiamy program nauczania do realizacji informatyki na poziomie podstawowym dla klas I-III opracowany zgodnie z podstawą programową dla szkół ponadpodstawowych określoną w w/w rozporządzeniu. Cele kształcenia (wymagania ogólne) są wspólne dla wszystkich klas. 

PODSTAWA PROGRAMOWA KSZTAŁCENIA OGÓLNEGO 
DLA CZTEROLETNIEGO LICEUM OGÓLNOKSZTAŁCĄCEGO I PIĘCIOLETNIEGO TECHNIKUM
INFORMATYKA
ZAKRES PODSTAWOWY I ROZSZERZONY

Cele kształcenia – wymagania ogólne
I.	Rozumienie, analizowanie i rozwiązywanie problemów na bazie logicznego i abstrakcyjnego myślenia, myślenia algorytmicznego i sposobów reprezentowania informacji. 
II.	Programowanie i rozwiązywanie problemów z wykorzystaniem komputera oraz innych urządzeń cyfrowych: układanie i programowanie algorytmów, organizowanie, wyszukiwanie i udostępnianie informacji, posługiwanie się aplikacjami komputerowymi. 
III.	Posługiwanie się komputerem, urządzeniami cyfrowymi i sieciami komputerowymi, w tym: znajomość zasad działania urządzeń cyfrowych i sieci komputerowych oraz wykonywania obliczeń i programów. 
IV.	Rozwijanie kompetencji społecznych, takich jak: komunikacja i współpraca w grupie, w tym w środowiskach wirtualnych, udział w projektach zespołowych oraz zarządzanie projektami. 
V.	Przestrzeganie prawa i zasad bezpieczeństwa. Respektowanie prywatności informacji i ochrony danych, praw własności intelektualnej, etykiety w komunikacji i norm współżycia społecznego, ocena zagrożeń związanych z technologią i ich uwzględnienie dla bezpieczeństwa swojego i innych. 

Treści nauczania – wymagania szczegółowe
I.	Rozumienie, analizowanie i rozwiązywanie problemów. 
Zakres podstawowy. Uczeń: 
1)	planuje kolejne kroki rozwiązywania problemu, z uwzględnieniem podstawowych etapów myślenia komputacyjnego (określenie problemu, definicja modeli i pojęć, znalezienie rozwiązania, zaprogramowanie i testowanie rozwiązania). 
2)	stosuje przy rozwiązywaniu problemów z różnych dziedzin algorytmy poznane w szkole podstawowej oraz algorytmy: 
a)	na liczbach: badania pierwszości liczby, zamiany reprezentacji liczb między pozycyjnymi systemami liczbowymi, działań na ułamkach z wykorzystaniem NWD i NWW, 
b)	na tekstach: porównywania tekstów, wyszukiwania wzorca w tekście metodą naiwną, szyfrowania tekstu metodą Cezara, 
c)	porządkowania ciągu liczb: przez wstawianie i metodą bąbelkową, 
d)	obliczania wartości elementów ciągu metodą iteracyjną w tym wartości elementów ciągu Fibonacciego. 
3)	 sprawdza poprawność działania algorytmów dla przykładowych danych. 
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	wyróżnia w problemie podproblemy i charakteryzuje: metodę połowienia, stosuje podejście zachłanne i rekurencję; 
2)	porównuje działanie różnych algorytmów dla wybranego problemu, analizuje algorytmy na podstawie ich gotowych implementacji; 
3)	w zależności od problemu rozwiązuje go, stosując metodę wstępującą lub zstępującą; 
4)	do realizacji rozwiązania problemu dobiera odpowiednią metodę lub technikę algorytmiczną i struktury danych; 
5)	objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych i ocenia jego efektywność; 
6)	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; 
7)	przedstawia sposoby reprezentowania w komputerze znaków, liczb, wartości logicznych; 
8)	 objaśnia sposoby wykonywania przez komputer działań arytmetycznych i operacji logicznych; 
9)	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; 
10)	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. 
Zakres podstawowy. Uczeń: 
1)	projektuje i programuje rozwiązania problemów z różnych dziedzin, stosuje przy tym: instrukcje wejścia/wyjścia, wyrażenia arytmetyczne i logiczne, instrukcje warunkowe, instrukcje iteracyjne, funkcje z parametrami i bez parametrów, testuje poprawność programów dla różnych danych; w szczególności programuje algorytmy z punktu I.2); 
2)	do realizacji rozwiązań problemów prawidłowo dobiera środowiska informatyczne, aplikacje oraz zasoby, wykorzystuje również elementy robotyki; 
3)	przygotowuje opracowania rozwiązań problemów, posługując się wybranymi aplikacjami: 
a)	projektuje modele dwuwymiarowe i trójwymiarowe, tworzy i edytuje projekty w grafice rastrowej i wektorowej, wykorzystuje różne formaty obrazów, przekształca pliki graficzne, uwzględniając wielkość i jakość obrazów, 
b)	opracowuje dokumenty o różnorodnej tematyce, w tym informatycznej, i o rozbudowanej strukturze, dzieli tekst na sekcje i kolumny, tworzy spisy treści, rysunków i tabel, pracuje nad dokumentem w trybie recenzji, definiuje korespondencję seryjną, 
c)	gromadzi dane pochodzące z różnych źródeł w tabeli arkusza kalkulacyjnego, korzysta z różnorodnych funkcji arkusza w zależności od rodzaju danych, filtruje dane według kilku kryteriów, dobiera odpowiednie wykresy do zaprezentowania danych, analizuje dane, korzystając z dodatkowych narzędzi, w tym z tabel i wykresów przestawnych, 
d)	wyszukuje informacje, korzystając z bazy danych opartej na co najmniej dwóch tabelach, definiuje relacje, stosuje filtrowanie, formułuje kwerendy, 
e)	tworzy prezentacje, w tym z wykorzystaniem technik multimedialnych, 
f)	tworzy stronę internetową zgodnie ze standardami, wzbogaconą tabelami, listami, posługuje się arkuszem stylów, korzysta z oprogramowania i serwisów przeznaczonych do tworzenia stron; potrafi opublikować własną stronę w internecie; 
4)	wyszukuje w sieci potrzebne informacje i zasoby, ocenia ich przydatność oraz wykorzystuje w rozwiązywanych problemach
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	projektuje i tworzy 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)	sprawnie posługuje się zintegrowanym środowiskiem programistycznym przy pisaniu, uruchamianiu i testowaniu programów; 
3)	przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
a)	tworzy i edytuje dwuwymiarowe oraz trójwymiarowe wizualizacje i animacje, stosuje właściwe formaty plików graficznych, 
b)	stosuje zaawansowane funkcje arkusza kalkulacyjnego w zależności od rodzaju danych, 
c)	projektuje i tworzy relacyjną bazę złożoną z wielu tabel, formułuje kwerendy, 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; 
4)	współtworzy otwarte zasoby i aktywności oraz umieszcza je w sieci. 
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	zapisuje za pomocą listy kroków lub pseudokodu, i implementuje w wybranym języku programowania, algorytmy poznane na wcześniejszych etapach oraz algorytmy: 
a)	algorytm Euklidesa w wersji iteracyjnej i rekurencyjnej wraz z zastosowaniami, 
b)	znajdowania określonego elementu w zbiorze uporządkowanym metodą binarnego wyszukiwania, 
c)	generowania liczb pierwszych metodą sita Eratostenesa, 
d)	jednoczesnego wyszukiwania elementu najmniejszego i największego, 
e)	sortowania ciągu liczb przez scalanie, 
f)	wyznaczania miejsc zerowych funkcji metodą połowienia, 
g)	obliczania przybliżonej wartości pierwiastka kwadratowego, 
h)	obliczania wartości wielomianu za pomocą schematu Hornera, 
i)	szybkiego potęgowania liczb w wersji iteracyjnej i rekurencyjnej, 
j)	rekurencyjnego tworzenia fraktali; 
2) wykorzystuje znane sobie algorytmy przy rozwiązywaniu i programowaniu rozwiązań następujących problemów: 
a)	rozkładania liczby na czynniki pierwsze, 
b)	wykonywania działań na liczbach w systemach innych niż dziesiętny, 
c)	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, 
d)	zamiany wyrażenia na postać w odwrotnej notacji polskiej i obliczanie jego wartości na podstawie tej postaci; 
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: 
a)	wyszukiwanie elementów liniowe i przez połowienie (do znajdowania elementów w zbiorze, sortowania przez wstawianie, przybliżonego rozwiązywania równań), 
b)	rekurencję (do generowania ciągów liczb, potęgowania, sortowania liczb, generowania fraktali), 
c)	metodę dziel i zwyciężaj (jednoczesne znajdowanie minimum i maksimum, sortowanie przez scalanie i szybkie), 
d)	podejście zachłanne (do wydawania reszty, szukania najkrótszej drogi), 
e)	programowanie dynamiczne (do szukania najdłuższego wspólnego podciągu),
f)	metodę szyfrowania z kluczem publicznym i jej zastosowanie w podpisie elektronicznym, 
g)	 struktury dynamiczne: stos, kolejka, lista (do realizacji algorytmu ONP), 
h)	grafy (do przedstawiania abstrakcyjnego modelu sytuacji problemowych). 
III.	 Posługiwanie się komputerem, urządzeniami cyfrowymi i sieciami komputerowymi. 
Zakres podstawowy. Uczeń: 
1)	zapoznaje się z możliwościami nowych urządzeń cyfrowych i towarzyszącego im oprogramowania; 
2)	objaśnia funkcje innych niż komputer urządzeń cyfrowych i korzysta z ich możliwości; 
3)	rozwiązuje problemy korzystając z różnych systemów operacyjnych; 
4)	charakteryzuje sieć Internet, jej ogólną budowę i usługi, opisuje sposoby identyfikowania komputerów w sieci. 
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	dokonuje kompresji informacji, objaśnia różnice między kompresją stratną i bezstratną tekstów, obrazów, dźwięków, filmów; 
2)	opisuje podstawowe funkcje urządzeń i protokoły stosowane w przepływie informacji i w zarządzaniu siecią. 
IV.	Rozwijanie kompetencji społecznych. 
Zakres podstawowy. Uczeń: 
1)	aktywnie uczestniczy w realizacji projektów rozwiązujących problemy z różnych dziedzin; 
2)	podaje przykłady wpływu informatyki i technologii komputerowej na najważniejsze sfery życia osobistego i zawodowego; korzysta z wybranych e-usług; przedstawia wpływ technologii na dobrobyt społeczeństw i komunikację społeczną; 
3)	objaśnia konsekwencje wykluczenia i pozytywne aspekty włączenia cyfrowego; przedstawia korzyści, jakie przynosi informatyka i technologia komputerowa osobom o specjalnych potrzebach; 
4)	bezpiecznie buduje swój wizerunek w przestrzeni medialnej;
5)	poszerza i uzupełnia swoją wiedzę korzystając z zasobów udostępnionych na platformach do e-nauczania. 
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; 
2)	przygotowuje się do świadomego wyboru kierunku i zakresu dalszego kształcenia, głównie informatycznego, z myślą o przyszłej karierze zawodowej. 
V.	Przestrzeganie prawa i zasad bezpieczeństwa. 
Zakres podstawowy. Uczeń: 
1)	postępuje zgodnie z zasadami netykiety oraz regulacjami prawnymi dotyczącymi: ochrony danych osobowych, ochrony informacji oraz prawa autorskiego i ochrony własności intelektualnej w dostępie do informacji; jest świadomy konsekwencji łamania tych zasad; 
2)	respektuje obowiązujące prawo i normy etyczne dotyczące korzystania i rozpowszechniania oprogramowania komputerowego, aplikacji cudzych i własnych oraz dokumentów elektronicznych; 
3)	stosuje dobre praktyki w zakresie ochrony informacji wrażliwych (np. hasła, pin), danych i bezpieczeństwa systemu operacyjnego, objaśnia rolę szyfrowania informacji; 
4)	opisuje szkody, jakie mogą spowodować działania pirackie w sieci, w odniesieniu do indywidualnych osób, wybranych instytucji i całego społeczeństwa. 
Zakres rozszerzony. 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. 

Warunki i sposób realizacji
Cele kształcenia informatycznego – wymagania ogólne – są takie same dla wszystkich etapów edukacyjnych i dla wszystkich typów szkół. Ich interpretacja jest zapisana w postaci wymagań szczegółowych. Treści podstawy programowej z informatyki mają charakter przyrostowy, sugerując w ten sposób spiralny rozwój wiedzy, umiejętności i kompetencji uczniów przez wszystkie lata nauki szkolnej. 
Na nową podstawę informatyki w liceum ogólnokształcącym i technikum należy patrzeć w powiązaniu ze zmianami, jakie nastąpiły w nauczaniu informatyki w szkole podstawowej. Wprowadzenie rozwiązywania problemów z pomocą komputerów i programowania od najmłodszych lat znacznie wydłużyło okres poznawania tych zagadnień, a przez to umożliwiło stopniowe i uporządkowane kształtowanie myślenia algorytmicznego/komputacyjnego. Wspólne wymagania ogólne i spiralny układ wymagań szczegółowych podstawy na przestrzeni wszystkich etapów edukacyjnych stworzyły możliwość ciągłego utrwalania wcześniej kształtowanych umiejętności i przemyślanego rozszerzania ich o nowe, odpowiednio do naturalnego rozwoju ucznia. Stopniowe wprowadzanie uczniów w świat informatyki i jej zastosowań w różnych przedmiotach i dziedzinach życia kładzie solidne podwaliny pod umiejętności rozwiązywania w liceum ogólnokształcącym i technikum zagadnień trudniejszych. Zwiększa to u uczniów zaciekawienie przedmiotem i przygotowanie do rozwiązywania różnorodnych problemów ze świadomym wykorzystaniem metod mających swoje korzenie w informatyce. Wybór przez uczniów dalszej drogi i poziomu kształcenia informatycznego w liceum ogólnokształcącym i technikum będzie bardziej świadomy niż do tej pory. Już w szkole podstawowej uczniowie poznają różnorodne algorytmy. Uczą się programować, w tym także sterować robotem. Dzięki temu, zarówno w kształceniu w zakresie podstawowym, jak i rozszerzonym, łatwiej będzie realizować zagadnienia informatyczne do tej pory uznawane za trudne. 
Najważniejszym celem kształcenia informatycznego uczniów jest rozwój umiejętności myślenia komputacyjnego, skupionego na kreatywnym rozwiązywaniu problemów z różnych dziedzin ze świadomym wykorzystaniem przy tym metod i narzędzi wywodzących się z informatyki, w tym programowania. Takie podejście jest kontynuowane w liceum ogólnokształcącym i technikum zarówno w zakresie podstawowym, jak i rozszerzonym. 
W liceum ogólnokształcącym i technikum podstawa programowa dla zakresu podstawowego obowiązuje wszystkich uczniów. Zagadnienia algorytmiczne wyszczególnione w podstawie są dobrane świadomie, wiążą się bowiem z problemami z innych przedmiotów, na przykład z matematyki, jak i dotyczą problemów związanych z funkcjonowaniem w społeczeństwie cyfrowym. Wiele pojęć i metod matematycznych jest integralną częścią informatyki, związki matematyki z informatyką są naturalne. Programując rozwiązania problemów, uczeń stosuje odpowiednie metody i nadaje rozwiązaniom wymiar praktyczny, łącząc aspekty programistyczne z elementami sterowania rzeczywistymi obiektami, np. robotami. 
Rozwiązywanie problemów leży również u podstaw pracy z aplikacjami użytkowymi. Projektując grafikę, opracowując dokumenty, analizując dane i wyszukując informacje uczeń poznaje możliwości gotowych aplikacji i ich przydatne funkcje. W podstawie pojawia się projektowanie trójwymiarowe, wspomagające kształcenie wyobraźni przestrzennej, niezbędnej w wielu dziedzinach życia, między innymi w medycynie, budownictwie i projektowaniu różnorodnych elementów. 
Uczeń kończący kształcenie informatyczne w zakresie podstawowym powinien sprawnie posługiwać się współczesnymi urządzeniami cyfrowymi, sieciami oraz systemami operacyjnymi zarządzającymi ich pracą. Instalacja nowej wersji sytemu czy oprogramowania powinna być wykonywana przez niego świadomie, przy zachowaniu bezpieczeństwa danych i poszanowaniu własności intelektualnej. Podczas korzystania z serwisów społecznościowych, e-usług, platform do e-nauczania, zasobów otwartych i wszelkich zasobów umieszczonych również w chmurze, uczeń powinien przestrzegać ogólnie przyjętych zasad netykiety, jak i bezpieczeństwa w przestrzeni cyfrowej. 
W kształceniu informatycznym w zakresie rozszerzonym treści nauczania są znacząco rozszerzane. Poza traktowaniem programowania jako aktywności rozwijającej kreatywność i innowacyjność uczniów w każdej dziedzinie życia, nauka algorytmiki i programowania odgrywa ważną rolę w przygotowaniu do wyboru kariery zawodowej związanej z informatyką. Bazuje ona na solidnych podstawach informatyki, która ma swoje teorie, metody i techniki oraz praktykę. 
W dziale II Programowanie i rozwiązywanie problemów z wykorzystaniem komputera i innych urządzeń cyfrowych występuje zakres rozszerzony I+II, w którym połączono umiejętności uczniów z działów I i II, obejmujące jednoczesne projektowanie rozwiązań problemów i ich programowanie. W tym dziale wyróżniono trzy punkty. Punkt 1 jest wykazem problemów i algorytmów ich rozwiązywania, które uczeń powinien poznać na zajęciach. W punkcie 2 zawarto problemy, które uczeń powinien umieć rozwiązać, stosując algorytmy z punktu 1 lub ich niewielkie modyfikacje. Rozwiązania problemów z punktów 1 i 2 uczeń powinien umieć zapisać za pomocą listy kroków lub pseudokodu oraz zaimplementować w wybranym języku programowania. Punkt 3 jest zwieńczeniem myślenia algorytmicznego i komputacyjnego, dotyczy metod i technik algorytmicznych oraz struktur danych, które w naturalny sposób mogą być wyabstrahowane z metod rozwiązywania problemów i ich komputerowych realizacji, będących przedmiotem w punktach 1 i 2. Wymienione w punkcie 3 trudniejsze, nowe problemy i algorytmy powinny być przynajmniej omówione na zajęciach, a działanie algorytmów zilustrowane na przykładach lub w odpowiednich aplikacjach. Zagadnienia poruszane w tym punkcie stanowią dobry materiał do przygotowania prezentacji i wygłoszenia referatu przez uczniów indywidualnie lub zespołowo. W grupach bardziej zaawansowanych zaleca się zaprogramowanie tych algorytmów. 
Umiejętności wykorzystywania aplikacji użytkowych do rozwiązywania problemów są doskonalone m.in. w zespołowej pracy nad rozbudowaną dokumentacją i prezentacją z użyciem aplikacji w chmurze czy przy prowadzeniu obliczeń w arkuszu kalkulacyjnym wzbogaconym programami wytworzonymi w wbudowanym języku programowania. 
Zarówno w zakresie podstawowym, jak i rozszerzonym zaleca się realizowanie treści informatycznych w formie projektów, tematycznie uwzględniających różnorodne zainteresowania uczniów, także z innych dziedzin. Uczniowie powinni mieć możliwość korzystania z komputerów w zależności od potrzeb wynikających z charakteru zajęć oraz realizowanych tematów i celów. 
Podczas zajęć z informatyki uczeń ma do swojej dyspozycji osobny komputer z dostępem do Internetu i aplikacji użytkowych zapewniających realizację zagadnień podstawy programowej. Zaleca się wspomaganie zajęć informatycznych pracą na platformie do e-nauczania, na której nauczyciel może umieszczać swoje materiały elektroniczne do zajęć – uczniowie oraz nauczyciel powinni na tej platformie mieć swoje indywidualne miejsce. Takie podejście sprzyja rozwojowi dodatkowych kompetencji. Uczniowie poznają możliwości platform do e-nauczania, a w ogólności – także do pracy w domu, uczą się sposobów korzystania z ich zasobów, a na poziomie zaawansowanym – sami kreują ich zawartość taką, jak dokumenty, quizy, wiki, fora, zadania. Ponadto uczniowie, którzy z różnych przyczyn nie będą obecni na zajęciach, mogą na podstawie materiałów nauczyciela na bieżąco, samodzielnie przygotowywać się do lekcji i przesyłać zadania domowe. Praca na platformie istotnie porządkuje proces uczenia się: uczy systematyczności i punktualności. Praca w środowisku wirtualnej chmury może być wykorzystana do polepszenia efektów kształcenia informatycznego oraz zwiększenia zaangażowania uczniów poprzez ich lepsze przygotowanie się do zajęć (kształcenie wyprzedzające) i wykonywanie przez nich zadań poza regularnymi lekcjami i zajęciami w szkole (odwrócone kształcenie). Pracownie komputerowe powinny być wyposażone w sposób zapewniający możliwość realizacji wymagań określonych w podstawie programowej.

Szczegółowe cele kształcenia i wychowania oraz treści nauczania w korelacji z treściami podstawy programowej
Moduł A. Wokół komputera i sieci komputerowych
Szczegółowe cele wychowania:
•	Przestrzeganie dyscypliny na zajęciach, w tym zasad bezpiecznej pracy przy komputerze.
•	Dbanie o porządek na stanowisku komputerowym.
•	Stosowanie zasad zdrowej pracy przy komputerze.
•	Szanowanie pracy innych. 
•	Przestrzeganie zasad ochrony zasobów komputera.
•	Rozumienie konieczności korzystania z licencjonowanego oprogramowania komputerowego.
•	Świadome korzystanie z sieci komputerowej.

Reprezentowanie znaków, danych liczbowych i wartości logicznych w komputerze	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie sposobów prezentacji znaków, w komputerze.	Wyjaśnia sposób kodowania liter i innych znaków alfanumerycznych. Stosuje kod ASCII do wstawiania znaków i liter z klawiatury.	I. Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
7) przedstawia sposoby reprezentowania w komputerze znaków, liczb, wartości logicznych; 	
Przedstawia sposoby reprezentowania w komputerze liczb całkowitych (również ujemnych) i dziesiętnych oraz wartości logicznych	Wie, jak reprezentowane są liczby w komputerze. Określa, czym charakteryzuje się system binarny (dwójkowy). Wie, jak oblicza się wartości dziesiętną liczby zapisanej w systemie dwójkowym i wyznaczania rozwinięcia szesnastkowego liczby dziesiętnej.
Wie, jak reprezentowane są liczby ujemne w komputerze.
Zna reprezentację stałopozycyjną i zmiennopozycyjną liczb.
Oblicza rozwinięcie dwójkowe liczby dziesiętnej.		

Kompresja informacji 	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Rozumienie, na czym polega kompresja danych i w jakim celu się ją stosuje.
Poznanie przykładowych algorytmów kompresji danych.	Wyjaśnia, na czym polega kompresja informacji.
Potrafi obliczyć współczynnik kompresji.  
Wymienia i omawia rodzaje kompresji – bezstratną i stratną.
Omawia algorytmy kompresji stratnej. 
Omawia algorytmy kompresji bezstratnej (statyczne, słownikowe). 
Dokonuje kompresji informacji, m.in. stosuje w przykładowych ćwiczeniach algorytmy kompresji bezstratnej.
Objaśnia różnice między kompresją stratną i bezstratną tekstów, obrazów, dźwięków i filmów.	III. Posługiwanie się komputerem, urządzeniami cyfrowymi i sieciami komputerowymi.
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1) dokonuje kompresji informacji, objaśnia różnice między kompresją stratną i bezstratną tekstów, obrazów, dźwięków, filmów; 	

Działania arytmetyczne i logiczne wykonywane przez komputer	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Rozumienie sposobów wykonywania przez komputer działań arytmetycznych i operacji logicznych.	Wie, jak komputer wykonuje operacje logiczne.
Zna sposób wykonywania przez komputer podstawowych działań arytmetycznych na liczbach w systemie dwójkowym. 
Potrafi dodawać, liczb, mnożyć i dzielić liczby dwójkowe.
Wie, jakie może być źródło błędów pojawiających się w obliczeniach komputerowych: błąd zaokrąglenia, błąd przybliżenia. 
Objaśnia na konkretnych przykładach sytuację nadmiaru i niedomiaru. Wie na czym polega stabilność algorytmu.	I. Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
6) 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; 
8) objaśnia sposoby wykonywania przez komputer działań arytmetycznych i operacji logicznych;
9) 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; 	

Sieci komputerowe – funkcje urządzeń i protokoły	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Posługiwanie się terminologią sieciową. 
Rozumienie działania komputerów w sieci. 
Objaśnianie podstawowych funkcji urządzeń i protokołów stosowanych w przepływie informacji i w zarządzaniu siecią.
Korzystanie z podstawowych usług sieci komputerowej.	Zna terminologię sieciową (sieć komputerowa, zasoby sieciowe, klient, serwer, switch, router, brama, konfiguracja sieciowa, protokoły sieciowe). 
Zna i omawia podstawowe funkcje urządzeń sieciowych.
Opisuje podstawowe funkcje urządzeń i protokoły stosowane w przepływie informacji.
Określa ustawienia sieciowe danego komputera i jego lokalizację w sieci (adres sieciowy, podsieci IPv4, protokoły DHCP, DNS i TCP, określa ustawienia sieciowe komputera).	III. Posługiwanie się komputerem, urządzeniami cyfrowymi i sieciami komputerowymi.
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
2) opisuje podstawowe funkcje urządzeń i protokoły stosowane w przepływie informacji i w zarządzaniu siecią. 	

Zasady bezpieczeństwa	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Przestrzeganie prawa i zasad bezpieczeństwa.
Rozumienie roli technik kryptografii.
Rozumienie znaczenia algorytmów szyfrowania. 	Przestrzega prawa i zasad bezpieczeństwa. 
Objaśnia rolę technik uwierzytelniania, kryptografii i podpisu elektronicznego w ochronie i dostępie do informacji.
Omawia znaczenie algorytmów szyfrowania i składania podpisu elektronicznego.	V. 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.	

Moduł B. Wokół dokumentów komputerowych

Szczegółowe cele wychowania:
•	Przestrzeganie dyscypliny na zajęciach, w tym zasad bezpiecznej pracy przy komputerze.
•	Dbanie o porządek na stanowisku komputerowym.
•	Stosowanie zasad zdrowej pracy przy komputerze.
•	Szanowanie pracy innych. Przestrzeganie zasad ochrony zasobów komputera.
•	Rozumienie konieczności korzystania z licencjonowanego oprogramowania komputerowego.
•	Stosowanie przepisów prawa w zakresie korzystania z cudzych materiałów pochodzących z różnych źródeł informacji.
•	Przestrzeganie zasad korzystania z urządzeń cyfrowych.
•	Oszczędne korzystanie materiałów eksploatacyjnych (np. podczas korzystania z drukarek).

Więcej o tworzeniu i edytowaniu grafiki rastrowej 	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Uświadomienie twórczego charakteru tworzenia grafiki komputerowej.
Poznanie przykładowych złożonych możliwości programu przeznaczonego do edycji grafiki rastrowej.
Stosowanie właściwych formatów do zapisu plików graficznych.	Zna cechy grafiki rastrowej.
Tworzy i edytuje obrazy rastrowe z wykorzystaniem zaawansowanych funkcji programu. 
Stosuje wybrane narzędzia edycji obrazu i narzędzia pomocnicze. 
Stosuje różne tryby pracy narzędzi malarskich – wykorzystuje opcje pędzli.
Wybiera fragmenty obrazu, wykorzystując wybrane narzędzia selekcji.
Wie, czym jest tryb maski i korzysta z niego.
Wykonuje operacje na barwach (modyfikuje krzywe i poziomy kolorów).
Potrafi przekształcić obraz, stosując wybrane przekształcenia geometryczne i filtry.
Stosuje narzędzie klonowania.
Wykonuje złożone fotomontaże, stosując pracę z warstwami obrazu.
Tworzy dwuwymiarowe animacje, wykorzystując pracę na warstwach obrazu.	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: 
3) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
a) tworzy i edytuje dwuwymiarowe oraz trójwymiarowe wizualizacje i animacje, stosuje właściwe formaty plików graficznych,	
Propozycja programów komputerowych: GIMP

Więcej o tworzeniu i edytowaniu grafiki wektorowej	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Uświadomienie twórczego charakteru tworzenia grafiki komputerowej.
Poznanie przykładowych złożonych możliwości programu przeznaczonego do edycji grafiki wektorowej.
Stosowanie właściwych formatów do zapisu plików graficznych.	Zna cechy grafiki wektorowej.
Tworzy i edytuje obrazy rastrowe z wykorzystaniem zaawansowanych funkcji programu. 
Stosuje wybrane narzędzia edycji obrazu i narzędzia pomocnicze, m.in. wybrane operacje na ścieżkach, klonowanie i inne możliwości modyfikowania obiektów.
Tworzy diagramy.
Stosuje właściwe formaty do zapisu plików graficznych.	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: 
3) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
a) tworzy i edytuje dwuwymiarowe oraz trójwymiarowe wizualizacje i animacje, stosuje właściwe formaty plików graficznych,	

Trójwymiarowe wizualizacje 	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie zaawansowanych możliwości przykładowego programu do projektowania grafiki 3D.
Rozwijanie wyobraźni i kreatywnego myślenia.	Projektuje złożone modele trójwymiarowe w wybranym programie komputerowym. 
Korzysta z wybranych narzędzi programu. Wykorzystuje je do budowania trójwymiarowych obiektów. Samodzielnie sprawdza działanie narzędzi.
Zna i stosuje odpowiednio różne sposoby zaznaczania obiektów i zmiany widoków.
Wykonuje autorskie projekty 3D.
Projektuje animacje trójwymiarowe w wybranym programie komputerowym. W tym celu korzysta z zaawansowanych możliwości programu. 	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: 
3) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
a) tworzy i edytuje dwuwymiarowe oraz trójwymiarowe wizualizacje i animacje, stosuje właściwe formaty plików graficznych,	
Propozycja programów komputerowych: SketchUp (dostępny bezpłatnie online po zalogowaniu) lub/Blender (bezpłatny, do pobrania w Internecie).

Zaawansowane funkcje arkusza kalkulacyjnego	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie zaawansowanych możliwości arkusza kalkulacyjnego i stosowanie ich do rozwiązywania zadań z różnych dziedzin.	Stosuje wybrane funkcje arkusza kalkulacyjnego (matematyczne, logiczne, statystyczne, daty i czasu, tekstowe).
Dobiera funkcje arkusza kalkulacyjnego w zależności od rozwiązywanego problemu, w tym rodzaju danych. 
Stosuje funkcje arkusza do realizacji algorytmów liniowych, z warunkami i iteracyjnych. 
Stosuje funkcje arkusza do rysowania fraktali.	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: 
3) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
b) stosuje zaawansowane funkcje arkusza kalkulacyjnego w zależności od rodzaju danych, ,,	
Propozycja programu komputerowego: Microsoft Excel.

Tworzenie relacyjnej bazy danych 	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Stosowanie techniki komputerowej do gromadzenia i przetwarzania informacji.
Poznanie zasad działania i obszarów zastosowań programów do tworzenia baz danych oraz korzyści z pozyskiwania i wymiany informacji.
Poznanie sposobu projektowanie relacyjnej bazy danych.
Rozumienie, na czym polega relacja w bazie danych.
Stosowanie kwerend do wyszukiwania informacji.
Rozumienie, na czym polega przetwarzanie danych.
Poznanie zasad tworzenia korespondencji seryjnej.	Zna pojęcia związane z bazami danych: baza danych, przetwarzanie danych, tabela, rekord, pole, typ pola, relacja, kwerenda, klucz podstawowy, indeks.
Omawia cechy relacyjnej bazy danych. Typy relacji: „jeden do wielu”, „jeden do jednego”, „wiele do wielu”.
Wykonuje podstawowe operacje na danych (wprowadzanie, modyfikowanie, sortowanie, indeksowanie, wyszukiwanie, prezentacja).
Projektuje relacyjną bazę danych, składającą się z trzech tabel połączonych relacją.
Zna zasady przygotowania tabel. Określa typ danych. Definiuje klucze podstawowe, w tym klucze złożone. Określa relacje. 
Tworzy kwerendy wybierające. Stosuje wybrane funkcje standardowe w kwerendach. Korzysta z parametrów w kwerendzie. 
Importuje dane z arkusza kalkulacyjnego i z dokumentu tekstowego do tabeli bazy danych.
Eksportuje dane do dokumentu tekstowego i do arkusza kalkulacyjnego.
Wykorzystuje dane z bazy do korespondencji seryjnej: listy seryjne i etykiety adresowe.	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: 
3) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
c) projektuje i tworzy relacyjną bazę złożoną z wielu tabel, formułuje kwerendy, 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; 
	
Propozycja programu komputerowego: Microsoft Access.

Tworzenie kwerend z wykorzystaniem języka SQL	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie, czym jest język SQL.
Poznanie podstawowych instrukcji języka SQL.
Stosowanie języka SQL do wyszukiwania i przetwarzania informacji w relacyjnej bazie danych.	Stosuje język SQL jako strukturalny język zapytań.
Stosuje instrukcję SELECT wybrane klauzule instrukcji SELECT:
1)	klauzulę ORDER BY,
2)	klauzulę INNER JOIN,
3)	klauzulę LEFT JOIN,
4)	klauzulę GROUP BY.
Dopisuje rekordy.
Aktualizuje dane.
Usuwa rekordy.	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: 
3) przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
c) projektuje i tworzy relacyjną bazę złożoną z wielu tabel, formułuje kwerendy, 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; 	

Moduł C. Wokół algorytmiki i programowania
Szczegółowe cele wychowania: 
•	Słuchanie poleceń nauczyciela i systematyczne wykonywanie ćwiczeń.
•	Przestrzeganie dyscypliny na zajęciach, w tym zasad bezpiecznej pracy przy komputerze.
•	Dbanie o porządek na stanowisku komputerowym.
•	Stosowanie zasad zdrowej pracy przy komputerze, w tym planowanie przerw w pracy i rekreacji na świeżym powietrzu.
•	Rozwijanie dociekliwości poznawczej ukierunkowanej na rzetelne zdobywanie wiedzy.
•	Uczenie się precyzyjnego wyrażania myśli.
•	Dostrzeganie mechanizmów logicznych obecnych w otaczającym świecie.
•	Wykorzystywanie zasad projektowania algorytmów i programowania w życiu codziennym.

Więcej na temat programowania, w tym stosowania funkcji i tablic (list)	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie i rozumienie podstawowych metodologii programowania: programowanie zstępujące i wstępujące.
Rozumienie zalet stosowania funkcji.
Poznanie zastosowań wybranych typów danych i właściwego doboru struktur danych do algorytmu.
Rozumienie konsekwencji deklaracji zmiennych określonego typu (zajętość pamięci komputera, minimalne i maksymalne wartości zmiennej danego typu).	Zna i stosuje zasady programowania w dobrym stylu.
Wyjaśnia, czym charakteryzują się dwie przeciwstawne metody programowania: programowanie zstępujące ang. top-down) i wstępujące (ang. bottom-up).
Stosuje zmienne, instrukcje iteracyjne i warunkowe.
Deklaruje funkcje bez parametrów i z parametrami (niezwracające wartości i zwracające wartość). Stosuje funkcje w zadaniach. 
Zna i stosuje sposoby przekazywania parametrów – przez wartość, przez zmienną (przez referencję). 
Rozróżnia zmienne lokalne i globalne (ze względu na zasięg zmiennej).
Rozumie, czym jest zmienna indeksowana i wyjaśnia, kiedy się ją stosuje. Deklaruje tablice (listy), wczytuje elementy tablicy (listy) i wyprowadza je na ekran.
Wie, jak odwołuje się do elementu tablicy (listy).
Zna typy danych w wybranym języku programowania. Szacuje wielkość pamięci zajmowanej przez dane określonego typu.
Pisze rozbudowane programy, dobierając odpowiednie struktury danych do algorytmów. Objaśnia dobrany algorytm.
Uzasadnia poprawność i efektywność algorytmów.	I. Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
3) w zależności od problemu rozwiązuje go, stosując metodę wstępującą lub zstępującą;
4) do realizacji rozwiązania problemu dobiera odpowiednią metodę lub technikę algorytmiczną i struktury danych;
5) objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych i ocenia jego efektywność;
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 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) sprawnie posługuje się zintegrowanym środowiskiem programistycznym przy pisaniu, uruchamianiu i testowaniu programów; 	
Propozycja środowisk programistycznych: Dev-C++, Python IDLE (3.12), Java

Programowanie algorytmów iteracyjnych i rekurencyjnych	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie i stosowanie różnych sposobów przedstawiania algorytmów.
Poznanie wybranych algorytmów i ich programowanie.
Dobieranie do realizacji algorytmu odpowiedniej techniki algorytmicznej.
Rozumienie, na czym polega iteracja i w jaki sposób można określić warunek jej zakończenia.
Potrafi zastosować wybraną instrukcję iteracyjną do rozwiązania konkretnego zadania.
Rozumie, czym jest rekurencja.
	Określa specyfikację zadania (problemu).
Wie, jak przedstawić algorytm w postaci listy kroków lub pseudokodu.
Przedstawia algorytmy liniowe, z warunkami i iteracyjne (znane z zakresu podstawowego i z wcześniejszych etapów edukacyjnych) w postaci listy kroków lub pseudokodu oraz wybranego języka programowania:
•	algorytm Euklidesa w wersji iteracyjnej i rekurencyjnej wraz z zastosowaniami, 
•	znajdowania określonego elementu w zbiorze uporządkowanym metodą binarnego wyszukiwania, 
•	generowania liczb pierwszych metodą sita Eratostenesa, 
•	jednoczesnego wyszukiwania elementu najmniejszego i największego, 
•	sortowania ciągu liczb przez scalanie, 
•	wyznaczania miejsc zerowych funkcji metodą połowienia, 
•	obliczania przybliżonej wartości pierwiastka kwadratowego, 
•	obliczania wartości wielomianu za pomocą schematu Hornera, 
•	szybkiego potęgowania liczb w wersji iteracyjnej i rekurencyjnej, 
•	rekurencyjnego tworzenia fraktali.	I. Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
3) w zależności od problemu rozwiązuje go, stosując metodę wstępującą lub zstępującą;
4) do realizacji rozwiązania problemu dobiera odpowiednią metodę lub technikę algorytmiczną i struktury danych;
5) objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych i ocenia jego efektywność;
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1) zapisuje za pomocą listy kroków lub pseudokodu, i implementuje w wybranym języku programowania, algorytmy poznane na wcześniejszych etapach oraz algorytmy: 
a)	algorytm Euklidesa w wersji iteracyjnej i rekurencyjnej wraz z zastosowaniami, 
b)	znajdowania określonego elementu w zbiorze uporządkowanym metodą binarnego wyszukiwania, 
c)	generowania liczb pierwszych metodą sita Eratostenesa, 
d)	jednoczesnego wyszukiwania elementu najmniejszego i największego, 
e)	sortowania ciągu liczb przez scalanie, 
f)	wyznaczania miejsc zerowych funkcji metodą połowienia, 
g)	obliczania przybliżonej wartości pierwiastka kwadratowego, 
h)	obliczania wartości wielomianu za pomocą schematu Hornera, 
i)	szybkiego potęgowania liczb w wersji iteracyjnej i rekurencyjnej, 
j)	rekurencyjnego tworzenia fraktali; 	
Propozycja środowisk programistycznych: Dev-C++, IDLE (Python 3.12).

Stosowanie wybranych algorytmów do rozwiązywania problemów	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Analizowanie i rozwiązywanie problemów, w których występują sytuacje warunkowe i iteracja.
Stosowanie odpowiednich struktur danych i technik algorytmicznych odpowiednio dobranych do problemu.	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.
Wykorzystuje znane sobie algorytmy przy rozwiązywaniu i programowaniu rozwiązań następujących problemów: 
•	rozkładania liczby na czynniki pierwsze, 
•	wykonywania działań na liczbach w systemach innych niż dziesiętny, 
•	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, 
•	zamiany wyrażenia na postać w odwrotnej notacji polskiej i obliczanie jego wartości na podstawie tej postaci.
W zależności od problemu, stosuje metodę wstępującą lub zstępującą, dobiera odpowiednie struktury danych, metodę lub technikę algorytmiczną;
Objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych.
Analizuje algorytmy na podstawie ich gotowych implementacji.	I.  Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1) wyróżnia w problemie podproblemy i charakteryzuje: metodę połowienia, stosuje podejście zachłanne i rekurencję; 
2) porównuje działanie różnych algorytmów dla wybranego problemu, analizuje algorytmy na podstawie ich gotowych implementacji; 
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
2) wykorzystuje znane sobie algorytmy przy rozwiązywaniu i programowaniu rozwiązań następujących problemów: 
•	rozkładania liczby na czynniki pierwsze, 
•	wykonywania działań na liczbach w systemach innych niż dziesiętny, 
•	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, 
•	zamiany wyrażenia na postać w odwrotnej notacji polskiej i obliczanie jego wartości na podstawie tej postaci; 	
Propozycja środowisk programistycznych: Dev-C++, Python 3.7.

Objaśnianie algorytmów i porównywanie technik algorytmicznych	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Rozumienie, analizowanie i rozwiązywanie problemów.
Rozumienie działania wybranych algorytmów.
Porównywanie podstawowych metod i techniki algorytmicznych oraz struktur danych.	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: 
•	wyszukiwanie elementów liniowe i przez połowienie (do znajdowania elementów w zbiorze, sortowania przez wstawianie, przybliżonego rozwiązywania równań), 
•	rekurencję (do generowania ciągów liczb, potęgowania, sortowania liczb, generowania fraktali), 
•	metodę dziel i zwyciężaj (jednoczesne znajdowanie minimum i maksimum, sortowanie przez scalanie i szybkie), 
•	podejście zachłanne (do wydawania reszty, szukania najkrótszej drogi), 
•	programowanie dynamiczne (do szukania najdłuższego wspólnego podciągu),
•	metodę szyfrowania z kluczem publicznym i jej zastosowanie w podpisie elektronicznym, 
•	struktury dynamiczne: stos, kolejka, lista (do realizacji algorytmu ONP), 
•	grafy (do przedstawiania abstrakcyjnego modelu sytuacji problemowych).
Porównuje działanie różnych algorytmów dla danego problemu.	I.  Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1) wyróżnia w problemie podproblemy i charakteryzuje: metodę połowienia, stosuje podejście zachłanne i rekurencję; 
2) porównuje działanie różnych algorytmów dla wybranego problemu, analizuje algorytmy na podstawie ich gotowych implementacji; 

I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
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: 
a) wyszukiwanie elementów liniowe i przez połowienie (do znajdowania elementów w zbiorze, sortowania przez wstawianie, przybliżonego rozwiązywania równań), 
b) rekurencję (do generowania ciągów liczb, potęgowania, sortowania liczb, generowania fraktali), 
c) metodę dziel i zwyciężaj (jednoczesne znajdowanie minimum i maksimum, sortowanie przez scalanie i szybkie), 
d) podejście zachłanne (do wydawania reszty, szukania najkrótszej drogi), 
e) programowanie dynamiczne (do szukania najdłuższego wspólnego podciągu),
f) metodę szyfrowania z kluczem publicznym i jej zastosowanie w podpisie elektronicznym, 
g) struktury dynamiczne: stos, kolejka, lista (do realizacji algorytmu ONP), 
h) grafy (do przedstawiania abstrakcyjnego modelu sytuacji problemowych). 	

Moduł D. Wokół Internetu i projektów
Szczegółowe cele wychowania: 
•	Rozumienie znaczenia dostępu do Internetu dla własnego rozwoju oraz rozwoju gospodarczego kraju. Dokonywanie świadomego wyboru przeglądanych stron internetowych.
•	Uświadomienie niebezpieczeństwa związanego z nawiązywaniem poprzez Internet kontaktów z nieznajomymi osobami.
•	Przestrzeganie zasad właściwego zachowania w Internecie.
•	Przestrzeganie podstawowych przepisów prawa autorskiego, w tym korzystania z cudzych materiałów. 
•	Dostrzeganie zagrożeń, z jakimi możemy się spotkać w komunikacji i podczas wymiany informacji w Internecie.
•	Słuchanie poleceń nauczyciela i systematyczne wykonywanie ćwiczeń.
•	Przestrzeganie dyscypliny na zajęciach, w tym zasad bezpiecznej pracy przy komputerze.
•	Umiejętność współpracy w grupie. 

Kompetencje społeczne – zespołowy projekt programistyczny 	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie pracy informatyków i organizacji pracy zespołowej.
Współdziałanie w zespole, wypowiadanie własnego zdania, ale również rozumienie i uwzględnianie poglądów innych.
Stosowanie zasady dokładnego wykonywania swojej części pracy zgodnie z wcześniejszymi ustaleniami.
Rozwijanie kompetencji społecznych, w tym aktywności i kreatywności.	Zna zasady przygotowania i realizacji projektu programistycznego. 
Przedstawia etapy projektowania, np. analizę systemu informacyjnego, opracowanie założeń, wykonanie projektu technicznego, wykonanie projektu informatycznego, testowanie systemu, wdrożenie.
Realizuje projekt na zadany (lub samodzielnie wybrany) temat zgodnie z etapami projektowania, m.in.: 
•	przygotowanie się do wyboru kierunku i zakresu dalszego kształcenia, głównie informatycznego, z myślą o przyszłej drodze zawodowej,
•	myślenie komputacyjne.
Dzieli zadanie projektowe na zadania szczegółowe. Uczestniczy w realizacji projektu. 
Zna i stosuje zasady debaty ZA i PRZECIW.
Komunikuje się z wykorzystaniem nowoczesnych technologii, m.in. za pomocą urządzeń mobilnych, chmury.
Wykorzystuje zasoby edukacyjne zamieszczone w Internecie, wymienia informacje z innymi użytkownikami. 
Współtworzy otwarte zasoby i aktywności oraz umieszcza je w sieci.	I. Rozumienie, analizowanie i rozwiązywanie problemów. 
Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
10) 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: 
4) współtworzy otwarte zasoby i aktywności oraz umieszcza je w sieci. 

IV. Rozwijanie kompetencji społecznych. 
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; 
2) przygotowuje się do świadomego wyboru kierunku i zakresu dalszego kształcenia, głównie informatycznego, z myślą o przyszłej karierze zawodowej.	

Sztuczna inteligencja – projekt	
Szczegółowe cele kształcenia	Szczegółowe treści nauczania	Podstawa programowa	
	Uczeń:		
Poznanie obszarów zastosowań sztucznej inteligencji.
Korzystanie z prostych systemów SI.
Współdziałanie w zespole, wypowiadanie własnego zdania, ale również rozumienie i uwzględnianie poglądów innych.
Stosowanie zasady dokładnego wykonywania swojej części pracy zgodnie z wcześniejszymi ustaleniami.
Rozwijanie aktywności i kreatywności.	Realizuje projekt na temat sztucznej inteligencji,  w którym omawia m.in.: 
•	Obszary zastosowań sztucznej inteligencji.
•	Proste systemy SI.
•	Sieci neuronowe i uczenie maszynowe.
Korzysta z systemu ChatGPT do rozwiązywania różnych problemów, np. szuka odpowiedzi na pytania dotyczące wyboru kierunku dalszego kształcenia.
Korzysta z systemów GAN i wykorzystuje je do generowania obrazów.
Generuje utworów z innych dziedzin.
Przygotowuje w ramach projektu i przeprowadza debatę ZA i PRZECIW do dyskusji na temat sztucznej inteligencji.	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: 
4) współtworzy otwarte zasoby i aktywności oraz umieszcza je w sieci. 
IV. Rozwijanie kompetencji społecznych. 
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; 
2) przygotowuje się do świadomego wyboru kierunku i zakresu dalszego kształcenia, głównie informatycznego, z myślą o przyszłej karierze zawodowej.	

Propozycje metod sprawdzania osiągnięć ucznia
Należy tak organizować pracę na lekcji (przygotowywać odpowiednie ćwiczenia), aby również uczniowie mniej zaawansowani mieli szansę zdobycia najwyższej oceny i nie czuli się dyskryminowani. Wszystkim uczniom należy zapewnić sprawiedliwy sposób oceniania. Należy zwracać szczególną uwagę na postępy w zdobywaniu wiedzy. 
Dla uczniów zainteresowanych (zwłaszcza chcących zdawać maturę) należy przygotować zadania trudniejsze (np. z matury i olimpiady informatycznej), aby mogli wykazać się swoimi umiejętnościami i wiedzą, biorąc udział w konkursach i olimpiadach informatycznych.
Uczniom mającym trudności z wykonywaniem ćwiczeń i poleceń należy pomagać bezpośrednio podczas zajęć, udzielać wyjaśnień i dodatkowych wskazówek, motywować ich i zachęcać do dalszej pracy.
Należy wcześniej poinformować uczniów o wymaganiach na poszczególne oceny. 
Uczniowie powinni otrzymywać dużo ocen cząstkowych. Należy oceniać np.: 
•	ćwiczenia wykonywane podczas lekcji, 
•	odpowiedzi na pytania,
•	udział w projekcie grupowym,
•	zadania domowe,
•	aktywność na lekcji,
•	ćwiczenia sprawdzające. 
Ocena ćwiczeń wykonywanych podczas lekcji
W trakcie zajęć nauczyciel powinien zwrócić szczególną uwagę na sposób wykonywania ćwiczeń przez uczniów, korzystanie z podręcznika oraz wyjaśnień nauczyciela, ewentualnie pomocy innego ucznia. Nie należy tolerować wykonywania ćwiczeń przez „sąsiada”.
Należy obserwować, czy działania podejmowane przez uczniów w celu rozwiązania zadania wynikają z wiedzy na dany temat i nabytych umiejętności, czy są to działania świadome oraz czy uczeń wykonuje wszystkie czynności planowo i nie działa chaotycznie lub przypadkowo.
Można premiować uczniów, którzy wykonają zadanie całkowicie samodzielnie i poprawnie. 
Gdy wykonywane ćwiczenie ma być podsumowaniem większego działu, w ocenie należy uwzględnić opanowanie wszystkich umiejętności przewidzianych w programie dla danego tematu.
Podczas wykonywania ćwiczeń zasadne jest ocenienie na tej samej lekcji wszystkich uczniów.
Ocena odpowiedzi na pytania
W trakcie wykonywania przez uczniów ćwiczeń można zadawać pytania o zastosowaną metodę lub sposób otrzymania danego rozwiązania. Należy zwrócić uwagę na sposób formułowania odpowiedzi: czy uczeń posługuje się słownictwem potocznym, czy też używa określeń fachowych i rozumie ich znaczenie. 
Ocena udziału w projekcie grupowym
Wykonanie przez uczniów projektu grupowego pozwala na sprawdzenie i ocenę nabytych kompetencji oraz podsumowanie omówionych treści nauczania. W pracy grupowej każdy uczeń powinien być oceniany za wykonanie cząstkowego zadania, składającego się na cały projekt. Trzeba uwzględnić jego wkład pracy, zaangażowanie i umiejętność pracy w zespole.
Ocena zadań domowych
Uczniowie powinni mieć systematycznie zadawane zadania domowe, np. udzielanie odpowiedzi na pytania i wykonywanie zadań dotyczących tematu omawianego na lekcji, samodzielne zapoznanie się z danym tematem lub jego częścią. Zadania domowe należy regularnie sprawdzać, na każdej lekcji wybranym uczniom lub całej grupie.
Ocena aktywności na lekcji
Uczeń poprawnie odpowiadający na lekcji na pytania dodatkowe, wykonujący dodatkowe ćwiczenia, powinien być za to oceniany.
Ocena zadań sprawdzających 
Zadania sprawdzające powinny być bardzo precyzyjnie określone i dokładnie przygotowane (np. w postaci wypunktowanych poleceń), w formie zrozumiałej dla ucznia i ułatwiającej jednoznaczną ocenę. Forma zadań nie powinna odbiegać od ćwiczeń, które uczniowie wykonują podczas zajęć. Należy unikać tzw. zaliczania przedmiotu pod koniec półrocza czy roku szkolnego. 
W ocenie ćwiczenia należy uwzględnić wykonanie wszystkich poleceń zgodnie z treścią. Warto opracować odpowiednią punktację za wykonanie każdego polecenia.

Uwagi o realizacji programu
W polskich szkołach najbardziej rozpowszechniony jest sprzęt klasy IBM i oprogramowanie firmy Microsoft. Przedstawione w programie szczegółowe cele kształcenia i treści nauczania mogą być jednak realizowane na bazie dowolnego sprzętu i oprogramowania, które umożliwi poznanie podstawowych zasad tworzenia grafiki, prezentacji komputerowych, edycji tekstów, wykonywania obliczeń czy tworzenia stron internetowych. Warto stosować darmowe środowiska do tworzenia grafiki oraz nauki algorytmiki i programowania.
Przykładowe oprogramowanie w przypadku wyposażenia szkolnej pracowni w komputery typu PC: system operacyjny Windows, edytory grafiki (GIMP, Inkscape, Blender), wybrany edytor tekstu, arkusz kalkulacyjny, program do przygotowywania bazy danych i prezentacji multimedialnych (np. z pakietu Microsoft Office), wybrana przeglądarka internetowa: Microsoft Edge, Internet Explorer, Google Chrome, Mozilla Firefox, Opera), środowiska programistyczne języków: C++, Python 3.7, Java.
Komputery w pracowni powinny być połączone w sieć. Do przeprowadzenia niektórych zajęć potrzebne jest połączenie z Internetem. Pracownia komputerowa powinna posiadać oprogramowanie służące do filtrowania stron WWW o nieodpowiednich treściach. Każdy komputer powinien być wyposażony w mysz, klawiaturę, monitor.
Pracownia powinna być wyposażona w drukarkę (najlepiej kolorową), skaner, projektor multimedialny i odpowiedni ekran. Zalecanym wyposażeniem pracowni jest aparat i kamera cyfrowa.