Propozycja rozkładu materiału do realizacji informatyki w szkole ponadpodstawowej na poziomie klasy I 
(zakres podstawowy i rozszerzony – wersja z językiem Python)
opracowana na podstawie podręcznika: 
Grażyna Koba, Teraz bajty. Informatyka dla szkoły ponadpodstawowej. Zakres podstawowy. Klasa I, MIGRA, Wrocław 2019
i materiału edukacyjnego: 
Grażyna Koba, Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Materiał edukacyjny. Część 1, 
dostępnego na stronie internetowej ir.migra.pl

Autor: Grażyna Koba
MIGRA 2019
W rozporządzeniu Ministra Edukacji Narodowej z dnia 28 marca 2017 r. w sprawie ramowych planów nauczania dla publicznych szkół dokonano przydziału godzin na poszczególne zajęcia edukacyjne. Na trzecim etapie edukacyjnym informatykę w zakresie podstawowym należy realizować w wymiarze jednej godziny tygodniowo w każdej klasie: I, II i III, a zakresie rozszerzonym należy realizować w wymiarze sześciu godzin w cyklu nauczania.
Proponuję na realizację informatyki w zakresie podstawowym przeznaczyć w klasie pierwszej – 32 godziny (jedna godzina tygodniowo).
W związku z tym, że informatyka rozszerzona może być realizowana w różnych układach, poniżej przedstawiam rozkład na pierwsze 60 godzin nauczania (2 godziny tygodniowo).
Czyli łącznie (na realizację informatyki podstawowej z rozszerzoną w klasie I): 32 + 60 = 92 godziny.
W rozkładzie uwzględniono jeden język programowania wysokiego poziomu: Python. Nauczyciel wybierając ten język i realizując proponowane tematy spełni wymagania z podstawy programowej dotyczące tworzenia programów komputerowych. Godziny, które pozostaną, można przydzielić odpowiednio do pozostałych tematów z programowania – według uznania.
Uwaga: Jeśli w klasie I na realizację informatyki w zakresie rozszerzonym przeznaczono 30 godzin (czyli jedną godzinę tygodniowo), w prosty sposób można proponowany rozkład zmodyfikować, pozostawiając pierwsze 30 godzin z rozszerzenia (do tematu C3 i końcowego sprawdzianu włącznie).

Moduł		Temat z podręcznika	Numer lekcji	Temat lekcji	Podstawa programowa	
Moduł A Wokół komputera	Podstawowy	Temat A1. Komputer i urządzenia peryferyjne	1.		Parametry komputera	III. 1., 2.	
		Temat A1. Komputer i urządzenia peryferyjne	2.		Urządzenia peryferyjne	III. 1., 2.	
		Temat A2. Systemy operacyjne i inne oprogramowanie	3.		Systemy operacyjne i inne oprogramowanie	III. 3.	
	Rozszerzony	Temat A1. Jak dbać o sprzęt komputerowy?	4.		Dbamy o sprzęt komputerowy – część 1.	III. 1.	
		Temat A1. Jak dbać o sprzęt komputerowy?	5.		Dbamy o sprzęt komputerowy – część 2.	III. 1.	
		Temat A2. Projektowanie rozbudowy i zakupu nowego zestawu komputerowego i oprogramowania	6.		Rozbudowa zestawu komputerowego	III. 1.	
		Temat A2. Projektowanie rozbudowy i zakupu nowego zestawu komputerowego i oprogramowania	7.		Zakup nowego komputera i oprogramowania	III. 1.	
		Temat A2. Projektowanie rozbudowy i zakupu nowego zestawu komputerowego i oprogramowania	8.		Przygotowujemy listę oprogramowania	III. 1.	
			9.		Sprawdzian (tematy A1-A2 i tematy A1-A2)		
Moduł B. Wokół dokumentów komputerowych	Podstawowy	Temat B1. Opracowywanie dokumentów tekstowych o rozbudowanej strukturze		10.		Nagłówek, stopka i standardowe style tekstu	II. 2., 3b	
		Temat B1. Opracowywanie dokumentów tekstowych o rozbudowanej strukturze		11.		Niestandardowe style tekstu i konspekty	II. 2., 3b	
		Temat B1. Opracowywanie dokumentów tekstowych o rozbudowanej strukturze		12.		Odwołania w dokumencie tekstowym	II. 2., 3b	
		Temat B2. Dzielenie dokumentu tekstowego i praca w trybie recenzji	13.		Dzielenie dokumentu tekstowego i szablony dokumentów	II. 2., 3b	
		Temat B2. Dzielenie dokumentu tekstowego i praca w trybie recenzji	14.		Praca w trybie recenzji	II. 2., 3b	
		Temat B2. Dzielenie dokumentu tekstowego i praca w trybie recenzji	15.		Praktyczny poradnik	II. 2., 3b	
			16.		Sprawdzian (tematy B1-B2)		
		Temat B3. Opracowywanie grafiki rastrowej	17.		Opracowywanie grafiki rastrowej	II. 2., 3a	
		Temat B3. Opracowywanie grafiki rastrowej	18.		Praca z warstwami i z narzędziami zaznaczania 	II. 2., 3a	
		Temat B3. Opracowywanie grafiki rastrowej	19.		Edycja zdjęć w programie GIMP	II. 2., 3a	
	Rozszerzony	Temat B1. Więcej o tworzeniu i edytowaniu obrazów rastrowych w programie GIMP	20.		Tryby pracy narzędzi malarskich	II. 4a	
		Temat B1. Więcej o tworzeniu i edytowaniu obrazów rastrowych w programie GIMP	21.		Operacje na zaznaczonych obszarach o na barwach	II. 4a	
		Temat B1. Więcej o tworzeniu i edytowaniu obrazów rastrowych w programie GIMP	22.		Narzędzie klonowania	II. 4a	
		Temat B1. Więcej o tworzeniu i edytowaniu obrazów rastrowych w programie GIMP	23.		Tworzenie i edytowanie obrazów rastrowych w programie GIMP – zadania	II. 4a	
		Temat B2. Praca z warstwami obrazu i animacje	24.		Przekształcenia geometryczne i filtry	II. 4a	
		Temat B2. Praca z warstwami obrazu i animacje	25.		Tworzenie fotomontaży	II. 4a	
		Temat B2. Praca z warstwami obrazu i animacje	26.		Wykorzystanie warstw do tworzenia animacji	II. 4a	
		Temat B2. Praca z warstwami obrazu i animacje	27.		Praca z warstwami obrazu i animacje - zadania	II. 4a	
		Temat B2. Praca z warstwami obrazu i animacje	28.		Wykonywanie własnego projektu – fotomontażu lub animacji	II. 4a	
			29.		Sprawdzian (temat B3 i tematy B1-B2)		
	Podstawowy	Temat B4. Zasady tworzenia prezentacji multimedialnej	30.		Zasady tworzenia prezentacji multimedialnej	II. 2., 3e	
		Temat B4. Zasady tworzenia prezentacji multimedialnej	31.		Tworzymy prezentację multimedialną o Fryderyku Chopinie	II. 2., 3e	
			32.		Sprawdzian (temat B4)		
Moduł B. Wokół algorytmiki i programowania	Podstawowy	Temat C1. Wprowadzenie do programowania i rozwiązywania problemów z wykorzystaniem komputera	33.		Wprowadzenie do programowania i rozwiązywania problemów z wykorzystaniem komputera	I. 1., 4., 5.	
		Temat C1. Wprowadzenie do programowania i rozwiązywania problemów z wykorzystaniem komputera	34.		Języki programowania i programowanie	I. 1., 4., 5.	
		Temat C3. Tworzenie programów w języku Python	35.		Środowisko programistyczne języka Python, stosowanie zmiennych i wyprowadzanie wyników	I. 1., 4., 5., II. 1., 2.	
		Temat C3. Tworzenie programów w języku Python	36.		Zapisywanie rozwiązania problemu w języku Python	I. 1., 4., 5., II. 1., 2.	
		Temat C3. Tworzenie programów w języku Python	37.		Tworzenie programów w języku Python – zadania	I. 1., 4., 5., II. 1., 2.	
	Rozszerzony	Temat C1. Przedstawianie algorytmu liniowego w postaci listy kroków i schematu blokowego	38.		Lista kroków algorytmu liniowego	I. 2., 3.; I+II. 1.	
		Temat C1. Przedstawianie algorytmu liniowego w postaci listy kroków i schematu blokowego	39.		Schemat blokowy algorytmu liniowego	I. 2., 3.; I+II. 1.	
		Temat C1. Przedstawianie algorytmu liniowego w postaci listy kroków i schematu blokowego	40.		Analizowanie działania algorytmu	I. 2., 3.; I+II. 1.	
	Podstawowy	Temat C4. Stosowanie instrukcji warunkowych w językach C++ i Python	41.		Sytuacje warunkowe i algorytmy z warunkami prostymi w języku Python	I. 1., 4., 5., II. 1., 2.	
		Temat C4. Stosowanie instrukcji warunkowych w językach C++ i Python	42.		Algorytmy z warunkami złożonymi w języku Python	I. 1., 4., 5., II. 1., 2.	
		Temat C4. Stosowanie instrukcji warunkowych w językach C++ i Python	43.		Sprawdzanie poprawności danych i algorytmy z warunkami zagnieżdżonymi	I. 1., 4., 5., II. 1., 2.	
	Rozszerzony	Temat C2. Przedstawianie algorytmu z warunkami w postaci listy kroków i schematu blokowego	44.		Przedstawianie algorytmu liniowego w postaci listy kroków i schematu blokowego – zadania	I. 2., 3.; I+II. 1.	
		Temat C2. Przedstawianie algorytmu z warunkami w postaci listy kroków i schematu blokowego	45.		Lista kroków algorytmu z warunkami	I. 2., 3.; I+II. 1.	
		Temat C2. Przedstawianie algorytmu z warunkami w postaci listy kroków i schematu blokowego	46.		Schemat blokowy algorytmu z warunkami	I. 2., 3.; I+II. 1.	
		Temat C2. Przedstawianie algorytmu z warunkami w postaci listy kroków i schematu blokowego	47.		Algorytm sprawdzania warunku istnienia trójkąta	I. 2., 3.; I+II. 1.	
		Temat C2. Przedstawianie algorytmu z warunkami w postaci listy kroków i schematu blokowego	48.		Lista kroków i schemat blokowy algorytmu z warunkami zagnieżdżonymi	I. 2., 3.; I+II. 1.	
		Temat C2. Przedstawianie algorytmu z warunkami w postaci listy kroków i schematu blokowego	49.		Rozwiązywanie równania liniowego	I. 2., 3.; I+II. 1.	
	Podstawowy	Temat C5. Stosowanie instrukcji iteracyjnych w językach C++ i Python	50.		Algorytmy iteracyjne w języku Python	I. 1., 4., 5., II. 1., 2.	
		Temat C5. Stosowanie instrukcji iteracyjnych w językach C++ i Python	51.		Instrukcje iteracyjne zagnieżdżone 	I. 1., 4., 5., II. 1., 2.	
		Temat C5. Stosowanie instrukcji iteracyjnych w językach C++ i Python	52.		Stosowanie instrukcji iteracyjnej w języku Python – zadania 	I. 1., 4., 5., II. 1., 2.	
	Rozszerzony	Temat C3. Przedstawianie algorytmu iteracyjnego w postaci listy kroków i schematu blokowego	53.		Lista kroków algorytmu iteracyjnego	I. 2., 3.; I+II. 1.	
		Temat C3. Przedstawianie algorytmu iteracyjnego w postaci listy kroków i schematu blokowego	54.		Schemat blokowy algorytmu iteracyjnego	I. 2., 3.; I+II. 1.	
		Temat C3. Przedstawianie algorytmu iteracyjnego w postaci listy kroków i schematu blokowego	55.		Lista kroków i schemat blokowy algorytmu z pętlą zagnieżdżoną	I. 2., 3.; I+II. 1.	
		Temat C3. Przedstawianie algorytmu iteracyjnego w postaci listy kroków i schematu blokowego	56.		Przedstawianie algorytmu iteracyjnego w postaci listy kroków i schematu blokowego – zadania	I. 2., 3.; I+II. 1.	
		–	57.		Sprawdzian (tematy C1-C5 i tematy C1-C3)		
		Temat C4. Stosowanie funkcji w językach C++ i Python 	58.		Programowanie zstępujące i wstępujące oraz funkcje niezwracające wartości 	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C4. Stosowanie funkcji w językach C++ i Python 	59.		Funkcje zwracające wartości	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C4. Stosowanie funkcji w językach C++ i Python 	60.		Stosowanie funkcji w języku Python – zadania	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C5. Więcej na temat stosowania funkcji w językach C++ i Python 	61.		Zasięg zmiennej 	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C5. Więcej na temat stosowania funkcji w językach C++ i Python 	62.		Sposoby przekazywania parametrów	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C5. Więcej na temat stosowania funkcji w językach C++ i Python 	63.		Więcej na temat stosowania funkcji w języku Python – zadania	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C6. Stosowanie tablic w języku C++ i list w języku Python	64.		Definiowanie list oraz wczytywanie i wyprowadzanie elementów listy w języku Python	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C6. Stosowanie tablic w języku C++ i list w języku Python	65.		Stosowanie list w języku Python – zadania (część 1.)	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C6. Stosowanie tablic w języku C++ i list w języku Python	66.		Stosowanie list w języku Python – zadania (część 2.)	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		–	67.		Sprawdzian (tematy C4-C6)	–	
		Temat C7. Stosowanie instrukcji iteracyjnych w językach C++ i Python 	68.		Instrukcja while w języku Python	I. 2., 3.; II. 1.,2., 3.; I+II. 1.;	
		Temat C7. Stosowanie instrukcji iteracyjnych w językach C++ i Python 	69.		Instrukcja for a instrukcja while w języku Python	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C7. Stosowanie instrukcji iteracyjnych w językach C++ i Python 	70.		Pisanie programów w języku Python z wykorzystaniem instrukcji iteracyjnych	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C7. Stosowanie instrukcji iteracyjnych w językach C++ i Python 	71.		Pisanie programów w języku Python z wykorzystaniem instrukcji iteracyjnych	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C8. Wyszukiwanie elementów – liniowe i przez połowienie	72.		Zastosowanie wyszukiwania liniowego do znajdowania najmniejszego elementu	I. 2., 3.; II. 1.,2., 3.; I+II. 1.	
		Temat C8. Wyszukiwanie elementów – liniowe i przez połowienie	73.		Algorytm jednoczesnego znajdowania minimum i maksimum	I. 2., 3.; II. 1.,2., 3.; I+II. 1d	
		Temat C8. Wyszukiwanie elementów – liniowe i przez połowienie	74.		Wyszukiwanie elementów – liniowe i przez połowienie - zadania	I. 2., 3.; II. 1.,2., 3.; I+II. 1d	
		Temat C9. Iteracyjna realizacja wybranych algorytmów w językach C++ i Python	75.		Schemat Hornera	I. 2., 3.; II. 1.,2., 3.; I+II. 1h	
		Temat C9. Iteracyjna realizacja wybranych algorytmów w językach C++ i Python	76.		Algorytm Euklidesa	I. 2., 3.; II. 1.,2., 3.; I+II. 1a	
		Temat C9. Iteracyjna realizacja wybranych algorytmów w językach C++ i Python	77.		Iteracyjna realizacja wybranych algorytmów w języku Python - zadania	I. 2., 3.; II. 1.,2., 3.; I+II. 1a, 1h	
		Temat C10. Elementy analizy algorytmów	78.		Poprawność algorytmów na przykładzie algorytmu obliczania silni	I. 2., 3.; II. 1.,2., 3.; 	
		Temat C10. Elementy analizy algorytmów	79.		Skończoność algorytmów na przykładzie wybranych algorytmów	I. 2., 3.; II. 1.,2., 3. 	
		Temat C10. Elementy analizy algorytmów	80.		Elementy analizy algorytmów – zadania	I. 2., 3.; II. 1.,2., 3. 	
		–	81.		Powtórzenie i utrwalenie materiału (tematy C4-C10)	–	
		–	82.		Sprawdzian (tematy C7-C10)	–	
Moduł B. Wokół Internetu i projektów	Podstawowy	Temat D1. Internet jako ocean informacji	83.		Internet jako ocean informacji	II.4., III. 4.	
		Temat D1. Internet jako ocean informacji	84.		Przykłady wyszukiwania informacji	II.4., III. 4.	
		Temat D2. Korzystanie z wybranych e-usług	85.		Korzystanie z wybranych e-usług	III. 1., 2., 3., 4.	
		Temat D3. Zadania projektowe	86.		Zadania projektowe – przygotowanie projektu	IV. 1., 2., 6.	
		Temat D3. Zadania projektowe	87.		Zadania projektowe – prezentacja projektu	IV. 1., 2., 6.	
	Rozszerzony	Temat D1. Realizacja projektów zespołowych, w tym praca w chmurze	88.		Realizacja projektów zespołowych, w tym praca w chmurze	IV. 1., 2.	
		Temat D2. Zadania projektowe	89.		Zadania projektowe 1. – przygotowanie projektu	IV. 1., 2.	
		Temat D2. Zadania projektowe	90.		Zadania projektowe 1. – prezentacja projektu	IV. 1., 2.	
		Temat D2. Zadania projektowe	91.		Zadania projektowe 2. – przygotowanie projektu	IV. 1., 2.	
		Temat D2. Zadania projektowe	92.		Zadania projektowe 2. – prezentacja projektu	IV. 1., 2.	

Podstawa programowa
W rozporządzeniu Ministra Edukacji Narodowej z dnia 30 stycznia 2018 r. w sprawie podstawy programowej kształcenia ogólnego dla liceum ogólnokształcącego, technikum oraz branżowej szkoły II stopnia określono 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ą określoną w w/w rozporządzeniu dla szkół ponadpodstawowych.
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 i przestawieniową,
c)	porządkowania ciągu liczb: przez wstawianie i metodą bąbelkową,
d)	wydawania reszty najmniejszą liczbą nominałów,
e)	obliczania wartości elementów ciągu metodą iteracyjną i rekurencyjną, w tym wartości elementów ciągu Fibonacciego.
3)	wyróżnia w problemie podproblemy i charakteryzuje: metodę połowienia, stosuje podejście zachłanne i rekurencję;
4)	porównuje działanie różnych algorytmów dla wybranego problemu, analizuje algorytmy na podstawie ich gotowych implementacji;
5)	sprawdza poprawność działania algorytmów dla przykładowych danych.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	w zależności od problemu rozwiązuje go, stosując metodę wstępującą lub zstępującą;
2)	do realizacji rozwiązania problemu dobiera odpowiednią metodę lub technikę algorytmiczną i struktury danych;
3)	objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych i ocenia jego efektywność;
4)	ilustruje i wyjaśnia rolę pojęć, obiektów i operacji matematycznych w projektowaniu rozwiązań problemów informatycznych i z innych dziedzin, posługuje się pojęciem logarytmu;
5)	przedstawia sposoby reprezentowania w komputerze znaków, liczb, wartości logicznych, obrazów, dźwięków, animacji;
6)	objaśnia sposoby wykonywania przez komputer działań arytmetycznych i operacji logicznych;
7)	wyjaśnia, jakie może być źródło błędów pojawiających się w obliczeniach komputerowych: błąd zaokrąglenia, błąd przybliżenia;
8)	dyskutuje na temat roli myślenia komputacyjnego i jego metod, takich jak: abstrakcja, reprezentacja danych, dekompozycja problemu, redukcja, myślenie rekurencyjne, podejście heurystyczne w rozwiązywaniu problemów z różnych dziedzin.
II.	Programowanie i rozwiązywanie problemów z wykorzystaniem komputera i innych urządzeń cyfrowych. 
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, posługując się przy tym konspektem dokumentu, dzieli tekst na sekcje i kolumny, tworzy spisy treści, rysunków i tabel, stosuje własne style i szablony, 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, tworzy i modyfikuje formularze, drukuje raporty,
e)	tworzy rozbudowane prezentacje, w tym z wykorzystaniem technik multimedialnych, ustala parametry pokazu,
f)	tworzy stronę internetową zgodnie ze standardami, wzbogaconą tabelami, listami, elementami dynamicznymi, 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 rozbudowane programy w procesie rozwiązywania problemów, wykorzystuje w programach dobrane do algorytmów struktury danych, w tym struktury dynamiczne i korzysta z dostępnych bibliotek dla tych struktur;
2)	stosuje zasady programowania strukturalnego i obiektowego w rozwiązywaniu problemów;
3)	sprawnie posługuje się zintegrowanym środowiskiem programistycznym przy pisaniu, uruchamianiu i testowaniu programów;
4)	przygotowując opracowania rozwiązań złożonych problemów, posługuje się wybranymi aplikacjami w stopniu zaawansowanym: 
a)	tworzy i edytuje dwuwymiarowe oraz trójwymiarowe wizualizacje i animacje, stosuje właściwe formaty plików graficznych,
b)	uczestniczy w opracowaniu dokumentacji projektu zespołowego, pracując przy tym w odpowiednim środowisku,
c)	stosuje zaawansowane funkcje arkusza kalkulacyjnego w zależności od rodzaju danych, definiuje makropolecenia, zna możliwości wbudowanego języka programowania,
d)	projektuje i tworzy relacyjną bazę złożoną z wielu tabel oraz sieciową aplikację bazodanową dla danych związanych z rozwiązywanym problemem, formułuje kwerendy, tworzy i modyfikuje formularze oraz raporty, stosuje język SQL do wyszukiwania informacji w bazie i do jej modyfikacji, uwzględnia kwestie integralności danych, bezpieczeństwa i ochrony danych w bazie,
e)	programuje elementy strony internetowej współpracujące z sieciową bazą danych;
5)	współtworzy otwarte zasoby i aktywności oraz umieszcza je w sieci, m.in. na platformie do e-nauczania.
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	zapisuje za pomocą listy kroków, schematu blokowego lub pseudokodu, i implementuje w wybranym języku programowania, algorytmy poznane na wcześniejszych etapach oraz algorytmy: 
a)	algorytm Euklidesa w wersji iteracyjnej i rekurencyjnej wraz z zastosowaniami,
b)	znajdowania określonego elementu w zbiorze: lidera, idola, 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)	badania położenia punktu względem prostej i przynależności punktu do odcinka,
k)	rekurencyjnego tworzenia fraktali: zbiór Cantora, drzewo binarne, dywan Sierpińskiego, płatek Kocha;
2)	wykorzystuje znane sobie algorytmy przy rozwiązywaniu i programowaniu rozwiązań następujących problemów: 
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,
e)	badania przecinania się odcinków, przynależności punktu do trójkąta,
f)	obliczanie przybliżonej wielkości pola obszarów zamkniętych;
3)	objaśnia, a także porównuje podstawowe metody i techniki algorytmiczne oraz struktury danych, wykorzystując przy tym przykłady problemów i algorytmów, w szczególności: 
a)	wyszukiwanie elementów liniowe i przez połowienie (do znajdowania elementów w zbiorze, sortowania przez wstawianie, przybliżonego rozwiązywania równań, sprawdzania przynależności punktu do wielokąta wypukłego),
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, pakowania plecaka, szukania najkrótszej drogi),
e)	programowanie dynamiczne (do pakowania plecaka, szukania najdłuższego wspólnego podciągu),
f)	metodę szyfrowania z kluczem publicznym i jej zastosowanie w podpisie elektronicznym,
g)	metodę haszowania (wyszukiwanie wzorca w tekście),
h)	metodę Monte Carlo (obliczanie przybliżonej wartości liczby π, symulacja ruchów Browna),
i)	struktury dynamiczne: stos, kolejka, lista (do realizacji algorytmu: ONP, symulacji problemu Flawiusza, sortowania leksykograficznego),
j)	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 podstawowe topologie sieci komputerowej, przedstawia i porównuje zasady działania i funkcjonowania sieci komputerowej typu klient-serwer, peer-to-peer, opisuje sposoby identyfikowania komputerów w sieci.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto: 
1)	projektuje rozbudowę i zakup nowego zestawu komputerowego oraz oprogramowania;
2)	dokonuje kompresji informacji, objaśnia różnice między kompresją stratną i bezstratną tekstów, obrazów, dźwięków, filmów;
3)	opisuje warstwowy model sieci komputerowej oraz model sieci internet, opisuje podstawowe funkcje urządzeń i protokoły stosowane w przepływie informacji i w zarządzaniu siecią;
4)	konfiguruje przykładową lokalną sieć komputerową oraz bezprzewodowy dostęp do sieci internet;
5)	wyjaśnia, od czego zależy sprawne funkcjonowanie sieci komputerowej oraz szybki dostęp do jej usług i zasobów (parametry osprzętu sieciowego, szerokość pasma, zabezpieczenia typu ściana ogniowa i programy antywirusowe, możliwości serwera).
IV. Rozwijanie kompetencji społecznych. 
Zakres podstawowy. Uczeń: 
1)	aktywnie uczestniczy w realizacji projektów informatycznych rozwiązujących problemy z różnych dziedzin, przyjmuje przy tym różne role w zespole realizującym projekt i prezentuje efekty wspólnej pracy;
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)	przedstawia trendy w historycznym rozwoju informatyki i technologii oraz ich wpływ na rozwój społeczeństw;
6)	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, w tym środowiskiem w chmurze; współtworzy zasoby udostępniane na platformach do e-nauczania;
2)	analizuje i charakteryzuje wpływ trendów w historycznym rozwoju pojęć, metod informatyki oraz technologii na możliwości rozwiązywania problemów teoretycznych i praktycznych;
3)	przygotowuje się do świadomego wyboru kierunku i zakresu dalszego kształcenia, głównie informatycznego, z myślą o przyszłej karierze zawodowej.
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 szkole ponadpodstawowej 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 szkole ponadpodstawowej 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 szkole ponadpodstawowej będzie bardziej świadomy niż do tej pory. Już w szkole podstawowej uczniowie poznają algorytmy szukania minimum, maksimum, elementu w zbiorze uporządkowanym i nieuporządkowanym, proste metody sortowania (zliczanie, wybieranie). 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. Rozważane algorytmy nawiązują między innymi do efektywnych poszukiwań w internecie, porządkowania informacji, działań antyplagiatowych oraz zachowania bezpieczeństwa informacji, na przykład przez jej szyfrowanie. 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ą schematu blokowego, 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. Pojawiają się bazy danych osadzone w sieci, a przy tworzeniu stron WWW programowane są elementy strony internetowej połączone z danymi z takiej bazy. 
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.