ZAWĘŻONA PODSTAWA PROGRAMOWA 2024
Propozycja rozkładu materiału 
do realizacji informatyki w szkole ponadpodstawowej na poziomie rozszerzonym
na trzecie 60 godzin lekcyjnych
opracowana na podstawie materiału edukacyjnego:
Grażyna Koba, Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Materiał edukacyjny. Część 3, 
dostępnego na stronie internetowej ir.migra.pl
Autor: Grażyna Koba
MIGRA 2024

Na trzecim etapie edukacyjnym informatykę w zakresie rozszerzonym należy realizować w wymiarze łącznie sześciu godzin tygodniowo w cyklu nauczania (łącznie 180 godzin). W związku z tym, że informatyka rozszerzona może być realizowana w różnych układach, proponujemy rozkłady materiału z podziałem na 30 godzin, czyli łącznie na 180 godzin (6*30). Poniżej przedstawiamy rozkład na trzecie 60 godzin nauczania.

Przedstawiamy propozycję rozkładu materiału na trzecie 60 godzin, uwzględniającą zmiany wynikające z zawężenia podstawy programowej dla szkoły ponadpodstawowej na podstawie rozporządzenia MEN z 2024 roku: Rozporządzenie Ministra Edukacji zmieniające 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 rozkładzie materiału na trzecie 60 godzin lekcyjnych: 
•	dotyczące przedstawiania sposobów reprezentowania w komputerze obrazu, dźwięku i animacji (lekcje z modułu A) – rozporządzenie usuwa te zagadnienia. Temat dotyczący tych zagadnień przesunięto na stronie ir.migra.pl do tematów dodatkowych; 
•	usunięto treści dotyczące tworzenia formularzy i raportów w bazach danych (lekcje z modułu B) – rozporządzenie usuwa te zagadnienia. Temat dotyczący tych zagadnień przesunięto na stronie ir.migra.pl do tematów dodatkowych; 
•	ponadto rozporządzenie usuwa algorytmy: znajdowania lidera, idola, elementu w zbiorze, wszystkie algorytmy geometryczne, pakowania plecaka, metodę haszowania (wyszukiwanie wzorca w tekście), metodę Monte Carlo (obliczanie przybliżonej wartości liczby π, symulacja ruchów Browna), algorytm symulacji problemu Flawiusza, sortowania leksykograficznego, a także nazwy konkretnych fraktali, które uczeń ma umieć zaprogramować (decyzja należy do nauczyciela); 
•	usunięte zostały treści dotyczące sieciowej aplikacji bazodanowej dla danych związanych z rozwiązywanym problemem i programowania elementów strony internetowej współpracującej z sieciową bazą danych. Rozporządzenie usuwa również umieszczanie zasobów na platformach do e-nauczania.
Natomiast treści związane z rekurencją, metodą połowienia i podejściem zachłannym zostały przesunięte z zakresu podstawowego do rozszerzonego.
Zmiany w rozkładzie dają trochę więcej czasu na danej lekcji na omówienie i przećwiczenie treści, które pozostały.

W rozkładzie uwzględniono dwa języki programowania wysokiego poziomu: C++ i Python. W każdym języku omawiane są te same zasady programowania. Można zatem omówić je, korzystając z dwóch wybranych środowisk lub z jednego. Niezależnie od wyboru środowiska (lub środowisk) treści z podstawy programowej dotyczące tworzenia programów komputerowych zostaną zrealizowane. Jeśli wybierzemy jeden język, godziny, które pozostaną, należy przydzielić odpowiednio do pozostałych tematów z programowania – według uznania. 

Moduł	Temat z materiału edukacyjnego	Numer lekcji	Temat lekcji	Podstawa programowa	
Moduł A. Wokół komputera i sieci komputerowych	Temat A1. Reprezentacja wartości logicznych i znaków w komputerze	1.		Reprezentacja wartości logicznych i znaków w komputerze	I.7.	
	Temat A2. Reprezentacja danych numerycznych w komputerze	2.		Reprezentacja binarna liczb ujemnych 	I.7.	
	Temat A2. Reprezentacja danych numerycznych w komputerze	3.		Reprezentacja liczb niecałkowitych	I.7.	
	Temat A2. Reprezentacja danych numerycznych w komputerze	4.		Reprezentacja danych numerycznych w komputerze – zadania	I.7.	
	Temat A3. Elementy arytmetyki komputerowej	5.		Dodawanie i odejmowanie liczb dwójkowych	I.8.	
	Temat A3. Elementy arytmetyki komputerowej	6.		Mnożenie i dzielenie w systemie dwójkowych	I.8.	
		7.		Sprawdzian (tematy A1-A3)		
Moduł B. Wokół dokumentów komputerowych	Temat B1. Tworzenie relacyjnej bazy danych na przykładzie systemu obsługi wypożyczalni filmów	8.		Przygotowanie tabel: klientów i filmów	II.3c.	
	Temat B1. Tworzenie relacyjnej bazy danych na przykładzie systemu obsługi wypożyczalni filmów	9.		Wybrane własności pól i przygotowanie tabeli wypożyczeń	II.3c.	
	Temat B1. Tworzenie relacyjnej bazy danych na przykładzie systemu obsługi wypożyczalni filmów	10.		Definiowanie relacji i klucza złożonego	II.3c.	
Moduł B. Wokół dokumentów komputerowych	Temat B2. Przygotowywanie formularzy i zestawień w relacyjnej bazie danych	11.		Przygotowanie formularzy wprowadzania danych filmu i klienta	II.3c.	
	Temat B2. Przygotowywanie formularzy i zestawień w relacyjnej bazie danych	12.		Kontrolowanie wprowadzanych danych i wprowadzanie danych	II.3c.	
	Temat B2. Przygotowywanie formularzy i zestawień w relacyjnej bazie danych	13.		Przygotowanie formularza wypożyczenia filmu	II.3c.	
	Temat B2. Przygotowywanie formularzy i zestawień w relacyjnej bazie danych	14.		Tworzenie kwerendy wybierającej i raportu	II.3c.	
	Temat B2. Przygotowywanie formularzy i zestawień w relacyjnej bazie danych	15.		Importowanie danych z innych dokumentów do tabeli bazy danych	II.3c.	
	Temat B3. Wybrane metody tworzenia kwerend z wykorzystaniem języka SQL	16.		Zastosowanie instrukcji SELECT	II.3c.	
	Temat B3. Wybrane metody tworzenia kwerend z wykorzystaniem języka SQL	17.		Wybrane klauzule instrukcji SELECT	II.3c.	
	Temat B3. Wybrane metody tworzenia kwerend z wykorzystaniem języka SQL	18.		Dopisywanie rekordów, aktualizacja danych i usuwanie rekordów	II.3c.	
	–	19.		Sprawdzian (tematy B1-B3)	–	
	Temat B4. Tworzenie dwuwymiarowych i trójwymiarowych wizualizacji i animacji	20.		Tworzenie wizualizacji 3D w programie SketchUp	II.3a.	
	Temat B4. Tworzenie dwuwymiarowych i trójwymiarowych wizualizacji i animacji	21.		Tworzenie animacji w programie SketchUp	II.3a.	
	Temat B4. Tworzenie dwuwymiarowych i trójwymiarowych wizualizacji i animacji	22.		Własne projekty w programie SketchUp	II.3a.	
Moduł C. Wokół algorytmiki i programowania	Temat C1. Wybrane złożone struktury danych w językach C++ i Python	23.		Wybrane złożone struktury danych w językach C++ i Python	I.4., II.1., II.2.	
	Temat C1. Wybrane złożone struktury danych w językach C++ i Python	24.		Wybrane złożone struktury danych w językach C++ i Python	I.4., II.1., II.2.	
	Temat C2.  Programowanie działań na liczbach w systemach innych niż dziesiętny	25.		Programowanie algorytmów dodawania i odejmowania na liczbach innych niż dziesiętny	I.3., I.4., I.5., II.1., II.2., I+II.2b.	
	Temat C2.  Programowanie działań na liczbach w systemach innych niż dziesiętny	26.		Programowanie algorytmów mnożenia i dzielenia na liczbach innych niż dziesiętny	I.3., I.4., I.5., II.1., II.2., I+II.2b.	
	Temat C3. Właściwości arytmetyki komputerowej	27.		Nadmiar i niedomiar 	I.6., I.9.	
	Temat C3. Właściwości arytmetyki komputerowej	28.		Błędy obliczeń – błąd przybliżenia i zaokrąglenia	I.6., I.9.	
	Temat C3. Właściwości arytmetyki komputerowej	29.		Stabilność algorytmów i zadania	I.6., I.9.	
	–	30.		Sprawdzian (tematy C1-C3)	–	
	Temat C4. Wybrane algorytmy numeryczne	31.		Wyznaczanie miejsc zerowych funkcji metodą połowienia 	I.3., I.4., I.5., II.1., II.2., I+II.1f.	
	Temat C4. Wybrane algorytmy numeryczne	32.		Obliczanie przybliżonej wartości pierwiastka kwadratowego metodą połowienia przedziału (bisekcji)
 	I.1., I.2., I.3., II.1., II.2., I+II.1g., I+II.3a.	
Moduł C. Wokół algorytmiki i programowania	Temat C4. Wybrane algorytmy numeryczne	33.		Obliczanie przybliżonej wartości pierwiastka kwadratowego metodą Newtona-Raphsona	I.1., I.2., I.3., II.1., II.2., I+II.1g., I+II.3a.	
	Temat C4. Wybrane algorytmy numeryczne	34.		Wybrane algorytmy numeryczne – zadania	I.1., I.2., I.3., II.1., II.2., I+II.1f., I+II.1g., I+II.3a.	
	Temat C5. Zastosowanie rekurencji do generowania ciągów liczb	35.		Rekurencyjne generowanie ciągu n - liczb naturalnych nieparzystych	I.1., I.4., I+II.1b.	
	Temat C5. Zastosowanie rekurencji do generowania ciągów liczb	36.		Rekurencyjne obliczanie wartości elementów ciągu Fibonacciego	I.1., I.4., I+II.1b.	
	Temat C5. Zastosowanie rekurencji do generowania ciągów liczb	37.		Rekurencyjne generowanie ciągu liczb pierwszych	I.1., I.4., I+II.1b.	
	Temat C5. Zastosowanie rekurencji do generowania ciągów liczb	38.		Ciągi matematyczne określone wzorem rekurencyjnym	I.1., I.4., I+II.1b.	
	Temat C6. Rekurencyjna realizacja algorytmu Euklidesa i algorytmu szybkiego potęgowania liczb	39.		Algorytm Euklidesa w wersji rekurencyjnej 	I.3., I.4., II.2., I+II.1a.	
	Temat C6. Rekurencyjna realizacja algorytmu Euklidesa i algorytmu szybkiego potęgowania liczb	40.		Zastosowania algorytmu Euklidesa	I.3., I.4., II.2., I+II.1a.	
	Temat C6. Rekurencyjna realizacja algorytmu Euklidesa i algorytmu szybkiego potęgowania liczb	41.		Szybkie potęgowanie liczb – iteracyjnie i rekurencyjnie	I.3., I.4., II.2., I+II.3b.	
	Temat C6. Rekurencyjna realizacja algorytmu Euklidesa i algorytmu szybkiego potęgowania liczb	42.		Rekurencyjna realizacja algorytmu Euklidesa i algorytmu szybkiego potęgowania liczb - zadania	I.3., I.4., II.2., I+II.1a., I+II.3b.	
	Temat C7. Rekurencyjne tworzenie fraktali 	43.		Rekurencyjne tworzenia fraktali	I.1., I.4., I+II.1j., I+II.3b.	
Moduł C. Wokół algorytmiki i programowania	Temat C7. Rekurencyjne tworzenie fraktali 	44.		Rekurencyjne tworzenia fraktali	I.1., I.4., I+II.1j., I+II.3b.	
	–	45.		Sprawdzian (tematy C4-C7)	–	
	Temat C8. Algorytmy sortowania 	46.		Sortowanie przez scalanie	I.1., I.2., I.3., I.4., 
II. 2., I+II.1e., I+II.3b., I+II.3c.	
	Temat C8. Algorytmy sortowania 	47.		Sortowanie przez wstawianie 	I.1., I.2., I.3., I.4., II.2., I+II.3a.	
	Temat C8. Algorytmy sortowania 	48.		Stosowanie rekurencji do sortowania liczb 	I.1., I.2., I.3., I.4., 
II. 2., I+II.1e., I+II.3b., I+II.3c.	
	Temat C8. Algorytmy sortowania 	49.		Algorytmy sortowania - zadania	I.1., I.2., I.3., I.4., II.2., I+II.1e., I+II.3a., I+II.3b., I+II.3c.	
	Temat C9. Dynamiczne struktury danych w języka C++ i Python	50.		Wskaźniki i tworzenie zmiennych dynamicznych i tablica dynamiczna	I.4., II.1., II.2., I+II.3g.	
	Temat C9. Dynamiczne struktury danych	51.		Lista jednokierunkowa	I.4., II.1., II.2., I+II.3g.	
	Temat C9. Dynamiczne struktury danych	52.		Stos i zastosowanie do realizacji ONP	I.4., II.1., II.2., I+II.3g.	
	Temat C9. Dynamiczne struktury danych	53.		Tworzenie kolejki w językach C++ i Python	I.4., II.1., II.2., I+II.3g.	
	Temat C10. Grafy i stosowanie programowania dynamicznego 	54.		Przykłady grafów	I.4., II.1., II.2., I+II.3h.	
Moduł C. Wokół algorytmiki i programowania	Temat C10. Grafy i stosowanie programowania dynamicznego 	55.		Szukanie najkrótszej drogi	I.4., II.1., II.2., I+II.3d.	
	Temat C10. Grafy i stosowanie programowania dynamicznego 	56.		Stosowanie programowania dynamicznego szukania najdłuższego wspólnego podciągu 	I.4., II.1., II.2., I+II.3e.	
	–	57.		Sprawdzian (tematy C8-C10)	–	
Moduł D. Wokół Internetu i projektów	Temat D1. Zadania projektowe 3	58.		Planowanie pracy nad projektem, gromadzenie i selekcja materiałów	II.4., IV.1., IV.2.	
	Temat D1. Zadania projektowe 3	59.		Przygotowanie projektu o wyborze kierunku i zakresu dalszego kształcenia informatycznego	II.4., IV.1., IV.2.	
	Temat D1. Zadania projektowe 3	60.		Prezentacje projektów i dyskusja	II.4., IV.1., IV.2.	

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.