Komputerowa reprezentacja liczb całkowitych oraz rzeczywistych. Ograniczenia i błędy reprezentacji. Reprezentacja danych nieliczbowych.
Specyfikacja algorytmu. Schemat blokowy algorytmu, komputerowe schematy blokowe. Drzewa jako reprezentacja obliczeń i algorytmów. Algorytmy iteracyjne. Metody tworzenia algorytmów: dziel i zwyciężaj, dynamiczna. Znajdowanie wzorca. Porządkowanie przez wybór. Algorytmy rekurencyjne.
Skończoność algorytmów. Efektywność algorytmów i złożoność problemów. Poprawność algorytmów.
Porządkowanie informacji – metody sortowania: proste wstawianie, przez zliczanie, kubełkowe. Kompresja danych – metoda Huffmana. Kryptografia – zagadnienia podstawowe. Szyfrowanie informacji z wykorzystaniem klucza publicznego.
Typy danych, instrukcje, procedury i funkcje, program strukturalny. Instrukcje powtarzania, stałe, typ okrojony. Typ wyliczeniowy, instrukcja wyboru. Tablicowe struktury danych. Rekurencyjne procedury i funkcje. Napisowy typ danych. Stos jako abstrakcyjny typ danych – przykłady implementacji. Zmienne typu plikowego. Plik tekstowy. Zmienne rekordowe. Pliki jednorodne i zastosowanie rekordów w programach. Typ wskaźnikowy. Lista wskaźnikowa jedno- i dwukierunkowa. Drzewo binarne.
Pojęcie obiektu. Klasa w językach programowania. Klasa a obiekt. Zmienne prywatne i publiczne. Hierarchia klas. Projektowanie programów obiektowo zorientowanych.
Rodzaje błędów w obliczeniach. Pojęcie stabilności algorytmu. Algorytmy stabilne i niestabilne. Zastosowanie schematu Hornera. Obliczanie wartości pierwiastka. Znajdowanie zer funkcji. Obliczanie przybliżonych wielkości pól figur.
Model warstwowy sieci (ISO-OSI). Protokoły komunikacyjne. Adresowanie komputerów w sieci. Dostęp do Internetu i bezpieczeństwo informacji.
Tworzenie bazy danych. Typy danych. Formularze – wprowadzanie danych do bazy. Wyszukiwanie danych. Tworzenie raportu. Definiowanie pól wyliczanych – operatory i funkcje. Poufność, ochrona i bezpieczeństwo danych.
Projektowanie bazy danych – określenie zadań, modelowanie tabel i związków, normalizacja danych. Język SQL – zakładanie bazy, tworzenie tabel i indeksów, modyfikacja danych, konstruowanie zapytań. Bezpieczeństwo i ochrona bazy danych.
Publikowanie stron WWW w sieci Internet. Podstawy języka HTML. Aktywne strony WWW, język PHP. Konstruowanie skryptów PHP do korzystania z bazy danych, wprowadzanie danych, tworzenie kwerendy, aktualizacja formularza.